1.21.8 to 1.21.9 - 1.21.11
This is an overview on the breaking changes, deprecations, and future development plans for Curios on 1.21.9/1.21.10/1.21.11. This document aims to be exhaustive and list every relevant change in each section. If there are any missing pieces of information, please submit a PR to this repository or initiate a support request in the Discord server.
Breaking Changes
Non-Deprecated
Field
CuriosCapability#ITEM_HANDLER- Type changed from
IItemHandlertoResourceHandler<ItemResource>
- Type changed from
Description
This change was made to conform to the new NeoForge transfer API, especially since the IItemHandler interface is
marked as deprecated and for removal. Consumers that need the legacy behavior can use IItemHandler#of(ResourceHandler)
as a wrapper for this return to get an IItemHandler instance.
Method
ICurioRendererrenderFirstPersonHand
ICurioRenderer#ModelRendererprepareModelrenderModelrenderFirstPersonHand- Parameter changed from
MultiBufferSourcetoSubmitNodeCollector
- Parameter changed from
Description
These methods are updated to conform to vanilla's rendering changes that now use a SubmitNodeCollector parameter.
Changes
Rendering
Methods
ICurioRendererrender( ItemStack, SlotContext, PoseStack, SubmitNodeCollector, int, LivingEntityRenderState, RenderLayerParent, EntityRendererProvider.Context, float, float)(new method)
Description
An updated render method has been added to conform to vanilla's rendering changes that now use a SubmitNodeCollector
parameter. The default implementation currently redirects to the old method that uses a MultiBufferSource parameter.
Deprecations
Rendering
Methods
ICurioRendererrendermethod that takes aMultiBufferSourceparameter- Replaced by:
rendermethod that takes aSubmitNodeCollectorparameter
- Replaced by:
renderModel- Replaced by:
net.minecraft.client.renderer.OrderedSubmitNodeCollector#submitModel
- Replaced by:
Description
These deprecations follow the rendering changes described above, replaced by an updated method.