Armor Models
In Catharsis we support a way to define custom armor models for items. This allows you to create dynamic textures for armor that can change based on certain properties,
You can define armor models in an armor definition file in assets/<namespace>/catharsis/armors/<id>.json. Similarly to item models you can also declare it for skyblock ids ie. assets/skyblock/catharsis/armors/<id>.json.
Armor models support some of the same model types as item models such as minecraft:condition and minecraft:range_dispatch as well as armor specific ones such as catharsis:texture.
Json format
- model: Set the Armor Model to use.
Armor Model
- type: One of
minecraft:condition,minecraft:range_dispatch, orcatharsis:texture. - Additional fields depending on the value of type, see the respective model type documentation for more details.
Available Armor Model Types
Texture (catharsis:texture)
Render a specific texture for the armor.
- type:
catharsis:texture - texture: The texture to use for the armor. This should be a resource location pointing to a PNG file.
Condition (minecraft:condition)
Render an armor model based on a boolean property.
- type:
minecraft:condition - property: type of boolean property.
- You can find a list of all available item model boolean properties on the Minecraft wiki at Item Model Properties. Additionally, you can find a list of all Catharsis custom item properties in the Catharsis Conditional Properties documentation.
- on_true: The armor model object when the property is true.
- on_false: The armor model object when the property is false.
Range Dispatch (minecraft:range_dispatch)
Render an armor model based on a numeric property. Will select last entry with a threshold less than or equal to the property value.
- type:
minecraft:range_dispatch - property: type of numeric property.
- You can find a list of all available item model numeric properties on the Minecraft wiki at Item Model Properties. Additionally, you can find a list of all Catharsis custom item properties in the Catharsis Range Properties documentation.
- Additional fields depending on the value of numeric property type.
- scale: Optional. Will be used to scale the property value before comparing it to thresholds. Default is
1.0. - entries:
- Entry object
- threshold: The threshold value for this entry.
- model: The armor model object to use for this threshold.
- Entry object
- fallback: Optional. The armor model object to use if no thresholds are met.
- Will render as a missing texture if fallback is needed but not provided.