Skip to content

Update 4.0 - Minecraft 1.21

Compare
Choose a tag to compare
@TheDeathlyCow TheDeathlyCow released this 22 Jun 11:56
· 20 commits to 1.21 since this release
a29bf5b

Updates Thermoo to MC 1.21. Includes several breaking changes:

  • Thermoo now requires Java 21, matching Minecraft's requirement.
  • Removed item attribute modifiers, without replacement. This was too difficult of a feature to update with item components, but a replacement feature may come soon.
  • The path of temperature effects was changed from thermoo/temperature_effects to thermoo/temperature_effect, to reflect similar changes made to the vanilla game.
  • The constant fields in ThermooAttributes now have type RegistryEntry<EntityAttribute> rather than EntityAttribute
  • EnvironmentController#getBaseValueForAttribute had its signature changed to take a RegistryEntry<EntityAttribute> rather than EntityAttribute
  • ScalingAttributeModifierTemperatureEffect.Config had several changes in both Java and Datapack APIs. The attribute type was changed to RegistryEntry<EntityAttribute> rather than EntityAttribute, and the UUID and name fields were removed and replaced with an identifier field called id, with this change also affecting datapacks. Furthermore, datapack's operation field must now be one of add_value, add_multiplied_base, or add_multiplied_total.
  • Temperature effects and custom Loot Condition types now have a MapCodec instead of a Codec (however temperature effect configs are still regular Codecs).
  • The class ThermooSeasons was renamed to ThermooSeason.
  • PlayerEnvironmentEvents.CAN_APPLY_PASSIVE_TEMPERATURE_CHANGE now returns a TriState instead of a boolean, making it clearer when a listener is passing.

The following additions were made to Thermoo:

  • Added default temperature converter settings instances for all units