32class HumanoidArmorItem :
public ::Item {
40 enum class Tier :
int {
56 ::ll::TypedStorage<4, 4, int> mDurabilityMultiplier;
57 ::ll::TypedStorage<4, 16, int[4]> mSlotProtections;
58 ::ll::TypedStorage<4, 4, int> mToughnessValue;
59 ::ll::TypedStorage<4, 4, int> mEnchantmentValue;
60 ::ll::TypedStorage<4, 4, float> mKnockbackResistance;
67 ::ll::TypedStorage<4, 4, ::SharedTypes::Legacy::ArmorSlot const> mSlot;
68 ::ll::TypedStorage<4, 4, int const> mDefense;
69 ::ll::TypedStorage<4, 4, int const> mModelIndex;
70 ::ll::TypedStorage<8, 8, ::HumanoidArmorItem::ArmorMaterial const&> mArmorType;
71 ::ll::TypedStorage<1, 1, bool> mCurrentVersionAllowsTrim;
76 HumanoidArmorItem& operator=(HumanoidArmorItem
const&);
77 HumanoidArmorItem(HumanoidArmorItem
const&);
82 std::string
const& nameId,
84 SharedTypes::Legacy::ArmorSlot
const slot,
93 mModelIndex(modelIndex),
94 mArmorType(armorType),
95 mCurrentVersionAllowsTrim(allowTrim) {}
100 virtual bool isHumanoidArmor() const ;
102 virtual
bool isValidRepairItem(
108 virtual
int getEnchantSlot() const ;
110 virtual
int getEnchantValue() const ;
112 virtual
int getArmorValue() const ;
114 virtual
int getToughnessValue() const ;
116 virtual
float getKnockbackResistanceValue() const ;
118 virtual
bool hasCustomColor(::
CompoundTag const* userData) const ;
124 virtual
void setColor(::
ItemStackBase& item, ::mce::Color const& color) const ;
126 virtual
bool isDyeable() const ;
128 virtual
bool isTrimAllowed() const ;
130 virtual ::SharedTypes::Legacy::ActorLocation getEquipLocation() const ;
132 virtual ::SharedTypes::Legacy::LevelSoundEvent getEquipSound() const ;
134 virtual
int getDamageChance(
int unbreaking) const ;
139 virtual
void appendFormattedHovertext(
142 ::Bedrock::Safety::RedactableString& hovertext,
143 bool const showCategory
146 virtual
void hurtActor(::
ItemStack& item, ::
Actor& actor, ::
Mob& attacker) const ;
149 getIconInfo(::
ItemStackBase const& item,
int newAnimationFrame,
bool inInventoryPane) const ;
153 virtual
int buildIdAux(
short auxValue, ::
CompoundTag const* userData) const ;
160 MCAPI ::ItemInstance getTierItem()
const;
167 MCAPI static ::HumanoidArmorItem::ArmorMaterial
const& CHAIN();
169 MCAPI static ::HumanoidArmorItem::ArmorMaterial
const& COPPER();
171 MCAPI static ::mce::Color& DEFAULT_LEATHER_COLOR();
173 MCAPI static ::HumanoidArmorItem::ArmorMaterial
const& DIAMOND();
175 MCAPI static ::HumanoidArmorItem::ArmorMaterial
const& ELYTRA();
177 MCAPI static ::HumanoidArmorItem::ArmorMaterial
const& GOLD();
179 MCAPI static ::HumanoidArmorItem::ArmorMaterial
const& IRON();
181 MCAPI static ::HumanoidArmorItem::ArmorMaterial
const& LEATHER();
183 MCAPI static ::HumanoidArmorItem::ArmorMaterial
const& NETHERITE();
185 MCAPI static ::HumanoidArmorItem::ArmorMaterial
const& TURTLE();
191 MCFOLD
bool $isHumanoidArmor()
const;
193 MCAPI
bool $isValidRepairItem(
199 MCAPI
int $getEnchantSlot()
const;
201 MCAPI
int $getEnchantValue()
const;
203 MCAPI
int $getArmorValue()
const;
205 MCAPI
int $getToughnessValue()
const;
207 MCAPI
float $getKnockbackResistanceValue()
const;
209 MCAPI
bool $hasCustomColor(
::CompoundTag const* userData)
const;
217 MCAPI
bool $isDyeable()
const;
219 MCAPI
bool $isTrimAllowed()
const;
221 MCAPI ::SharedTypes::Legacy::ActorLocation $getEquipLocation()
const;
223 MCAPI ::SharedTypes::Legacy::LevelSoundEvent $getEquipSound()
const;
225 MCAPI
int $getDamageChance(
int unbreaking)
const;
229 MCFOLD
void $appendFormattedHovertext(
233 bool const showCategory
238 MCAPI ::ResolvedItemIconInfo
239 $getIconInfo(
::ItemStackBase const& item,
int newAnimationFrame,
bool inInventoryPane)
const;
243 MCAPI
int $buildIdAux(
short auxValue,
::CompoundTag const* userData)
const;
251 MCAPI
static void** $vftable();