ItemHelper#get/setEntityData - controls an item's entity NBT data (for item frames, armor stands, etc.), both a default impl using the old NBT methods & a 1.20 impl using item components.
CompundTag#size & #isEmpty util methods.
ItemAttributeNBT#from/toLegacyName - for managing the old/internal EquipmentSlot names it uses.
Changes
ItemArmorPose and ItemFrameInvisible now use the new ItemHelper#get/setEntityData
The legacy ItemAttributeNBT property was changed to use API instead of NBT editing (was going to use API anyway for 1.20.6, so might as well just not have the legacy NBT logic - tested on 1.17.1 & 1.20.6).
CustomNBT attribute-related methods were removed/moved to ItemAttributeNBT.
The legacyAttributeProperties warning was bumped to SlowWarning.
Additions
ItemHelper#get/setEntityData
- controls an item's entity NBT data (for item frames, armor stands, etc.), both a default impl using the old NBT methods & a 1.20 impl using item components.CompundTag#size
&#isEmpty
util methods.ItemAttributeNBT#from/toLegacyName
- for managing the old/internalEquipmentSlot
names it uses.Changes
ItemArmorPose
andItemFrameInvisible
now use the newItemHelper#get/setEntityData
ItemAttributeNBT
property was changed to use API instead of NBT editing (was going to use API anyway for 1.20.6, so might as well just not have the legacy NBT logic - tested on 1.17.1 & 1.20.6).CustomNBT
attribute-related methods were removed/moved toItemAttributeNBT
.legacyAttributeProperties
warning was bumped toSlowWarning
.