Migration Guide 0.11 ➝ 0.12
Building
You will now need to set the kotlin compiler jvm target to 17
:
BlockOptions
The BlockOptions
constructor has changed. You will now need to set a list of ToolCategories
and a SoundGroup
instead of individual sounds. Refer to BlockOptions
for more information.
ItemBehavior
All configurable ItemBehaviors
have been reworked to load their data from configs using the new MaterialOptions
.
In most cases, you'll no longer need to instantiate them, but rather just use their companion object in the NovaItem
constructor and configure them in the material-specific config file. Those properties can now be accessed in code using <someItemBehavior>.options.<someProperty>
instead of <somItemBehavior>.<someProperty>
. Refer to ItemBehaviors for more information.
The getLore
and getName
methods have been replaced by updatePacketItemData
which combines those two methods and
adds more options.
Overlays
The width
(BossBarOverlay, ActionBarOverlay) and endY
(BossBarOverlay) were removed. You can still set them by
overwriting the getWidth
and getEndY
methods, but this is no longer mandatory.
Misc
- Some NovaMaterialRegistry functions have been slightly changed to include the new
maxStackSize
parameter - The
ToolUtils.damgeTool
functions have been moved toDamageableUtils.damageItem
SoundEffect
has been removedValueReloadable
has been replaced byProvider
.- General refactoring: You might need to change some imports regarding item (behaviors), tools, etc.