Class ArmorItem

java.lang.Object
net.minecraft.item.Item
net.minecraft.item.ArmorItem
All Implemented Interfaces:
Equipment, ItemConvertible, ToggleableFeature
Direct Known Subclasses:
AnimalArmorItem

public class ArmorItem extends Item implements Equipment
Mappings:
Namespace Name
named net/minecraft/item/ArmorItem
intermediary net/minecraft/class_1738
official csg
  • Field Details

    • MODIFIERS

      private static final EnumMap<ArmorItem.Type,UUID> MODIFIERS
      Mappings:
      Namespace Name Mixin selector
      named MODIFIERS Lnet/minecraft/item/ArmorItem;MODIFIERS:Ljava/util/EnumMap;
      intermediary field_7876 Lnet/minecraft/class_1738;field_7876:Ljava/util/EnumMap;
      official j Lcsg;j:Ljava/util/EnumMap;
    • DISPENSER_BEHAVIOR

      public static final DispenserBehavior DISPENSER_BEHAVIOR
      Mappings:
      Namespace Name Mixin selector
      named DISPENSER_BEHAVIOR Lnet/minecraft/item/ArmorItem;DISPENSER_BEHAVIOR:Lnet/minecraft/block/dispenser/DispenserBehavior;
      intermediary field_7879 Lnet/minecraft/class_1738;field_7879:Lnet/minecraft/class_2357;
      official a Lcsg;a:Lkt;
    • type

      protected final ArmorItem.Type type
      Mappings:
      Namespace Name Mixin selector
      named type Lnet/minecraft/item/ArmorItem;type:Lnet/minecraft/item/ArmorItem$Type;
      intermediary field_41933 Lnet/minecraft/class_1738;field_41933:Lnet/minecraft/class_1738$class_8051;
      official b Lcsg;b:Lcsg$a;
    • material

      protected final RegistryEntry<ArmorMaterial> material
      Mappings:
      Namespace Name Mixin selector
      named material Lnet/minecraft/item/ArmorItem;material:Lnet/minecraft/registry/entry/RegistryEntry;
      intermediary field_7881 Lnet/minecraft/class_1738;field_7881:Lnet/minecraft/class_6880;
      official c Lcsg;c:Lji;
    • attributeModifiers

      private final Supplier<AttributeModifiersComponent> attributeModifiers
      Mappings:
      Namespace Name Mixin selector
      named attributeModifiers Lnet/minecraft/item/ArmorItem;attributeModifiers:Ljava/util/function/Supplier;
      intermediary field_23741 Lnet/minecraft/class_1738;field_23741:Ljava/util/function/Supplier;
      official k Lcsg;k:Ljava/util/function/Supplier;
  • Constructor Details

    • ArmorItem

      public ArmorItem(RegistryEntry<ArmorMaterial> material, ArmorItem.Type type, Item.Settings settings)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/item/ArmorItem;<init>(Lnet/minecraft/registry/entry/RegistryEntry;Lnet/minecraft/item/ArmorItem$Type;Lnet/minecraft/item/Item$Settings;)V
      intermediary <init> Lnet/minecraft/class_1738;<init>(Lnet/minecraft/class_6880;Lnet/minecraft/class_1738$class_8051;Lnet/minecraft/class_1792$class_1793;)V
      official <init> Lcsg;<init>(Lji;Lcsg$a;Lcum$a;)V
  • Method Details

    • dispenseArmor

      public static boolean dispenseArmor(BlockPointer pointer, ItemStack armor)
      Mappings:
      Namespace Name Mixin selector
      named dispenseArmor Lnet/minecraft/item/ArmorItem;dispenseArmor(Lnet/minecraft/util/math/BlockPointer;Lnet/minecraft/item/ItemStack;)Z
      intermediary method_7684 Lnet/minecraft/class_1738;method_7684(Lnet/minecraft/class_2342;Lnet/minecraft/class_1799;)Z
      official a Lcsg;a(Lkq;Lcur;)Z
    • getType

      public ArmorItem.Type getType()
      Mappings:
      Namespace Name Mixin selector
      named getType Lnet/minecraft/item/ArmorItem;getType()Lnet/minecraft/item/ArmorItem$Type;
      intermediary method_48398 Lnet/minecraft/class_1738;method_48398()Lnet/minecraft/class_1738$class_8051;
      official f Lcsg;f()Lcsg$a;
    • getEnchantability

      public int getEnchantability()
      Gets the enchantability of an item. This specifies the ability of an item to receive enchantments when enchanted using an enchanting table. As the value increases, the amount and level of enchantments applied increase.

      If the value of this method is 0, the item cannot be enchanted using an enchanting table.

      Overrides:
      getEnchantability in class Item
      Mappings:
      Namespace Name Mixin selector
      named getEnchantability Lnet/minecraft/item/Item;getEnchantability()I
      intermediary method_7837 Lnet/minecraft/class_1792;method_7837()I
      official g Lcum;g()I
    • getMaterial

      public RegistryEntry<ArmorMaterial> getMaterial()
      Mappings:
      Namespace Name Mixin selector
      named getMaterial Lnet/minecraft/item/ArmorItem;getMaterial()Lnet/minecraft/registry/entry/RegistryEntry;
      intermediary method_7686 Lnet/minecraft/class_1738;method_7686()Lnet/minecraft/class_6880;
      official h Lcsg;h()Lji;
    • canRepair

      public boolean canRepair(ItemStack stack, ItemStack ingredient)
      Returns whether stack can be repaired using ingredient.

      This only handles repairing using the ingredient such as diamonds, and does not handle combining tools or armor.

      Overrides:
      canRepair in class Item
      Returns:
      whether stack can be repaired using ingredient
      Mappings:
      Namespace Name Mixin selector
      named canRepair Lnet/minecraft/item/Item;canRepair(Lnet/minecraft/item/ItemStack;Lnet/minecraft/item/ItemStack;)Z
      intermediary method_7878 Lnet/minecraft/class_1792;method_7878(Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)Z
      official a Lcum;a(Lcur;Lcur;)Z
    • use

      public TypedActionResult<ItemStack> use(World world, PlayerEntity user, Hand hand)
      Called when the player uses (or starts using) the item. The use action, by default, is bound to the right mouse button. This method checks the player's hunger when the item is a food, and will pass in all other cases by default.

      If the item can be used for multiple ticks, then this will only be called when the player starts using it. After that, Item.usageTick(net.minecraft.world.World, net.minecraft.entity.LivingEntity, net.minecraft.item.ItemStack, int) is called every tick until the player finishes using the item.

      This method is called on both the logical client and logical server, so take caution when overriding this method. The logical side can be checked using world.isClient().

      Overrides:
      use in class Item
      Parameters:
      world - the world the item was used in
      user - the player who used the item
      hand - the hand used
      Returns:
      a typed action result that specifies whether using the item was successful. The action result contains the new item stack that the player's hand will be set to.
      Mappings:
      Namespace Name Mixin selector
      named use Lnet/minecraft/item/Item;use(Lnet/minecraft/world/World;Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/util/Hand;)Lnet/minecraft/util/TypedActionResult;
      intermediary method_7836 Lnet/minecraft/class_1792;method_7836(Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1271;
      official a Lcum;a(Ldca;Lcmz;Lbqv;)Lbqx;
    • getAttributeModifiers

      public AttributeModifiersComponent getAttributeModifiers()
      Returns the attribute modifiers the item provides.

      Tools and armor should override this to specify the attack damage or armor points.

      Overrides:
      getAttributeModifiers in class Item
      Returns:
      the attribute modifiers the item provides
      Mappings:
      Namespace Name Mixin selector
      named getAttributeModifiers Lnet/minecraft/item/Item;getAttributeModifiers()Lnet/minecraft/component/type/AttributeModifiersComponent;
      intermediary method_7844 Lnet/minecraft/class_1792;method_7844()Lnet/minecraft/class_9285;
      official j Lcum;j()Lcxm;
    • getProtection

      public int getProtection()
      Mappings:
      Namespace Name Mixin selector
      named getProtection Lnet/minecraft/item/ArmorItem;getProtection()I
      intermediary method_7687 Lnet/minecraft/class_1738;method_7687()I
      official k Lcsg;k()I
    • getToughness

      public float getToughness()
      Mappings:
      Namespace Name Mixin selector
      named getToughness Lnet/minecraft/item/ArmorItem;getToughness()F
      intermediary method_26353 Lnet/minecraft/class_1738;method_26353()F
      official l Lcsg;l()F
    • getSlotType

      public EquipmentSlot getSlotType()
      Specified by:
      getSlotType in interface Equipment
      Mappings:
      Namespace Name Mixin selector
      named getSlotType Lnet/minecraft/item/Equipment;getSlotType()Lnet/minecraft/entity/EquipmentSlot;
      intermediary method_7685 Lnet/minecraft/class_5151;method_7685()Lnet/minecraft/class_1304;
      official m Lctt;m()Lbtd;
    • getEquipSound

      public RegistryEntry<SoundEvent> getEquipSound()
      Specified by:
      getEquipSound in interface Equipment
      Mappings:
      Namespace Name Mixin selector
      named getEquipSound Lnet/minecraft/item/Equipment;getEquipSound()Lnet/minecraft/registry/entry/RegistryEntry;
      intermediary method_31570 Lnet/minecraft/class_5151;method_31570()Lnet/minecraft/class_6880;
      official n Lctt;n()Lji;