Mostly around the fact that player inventories now properly support
setting and getting the BODY and SADDLE equipment slot. The slots are
exposed to the API via the extra contents array.
random other server classes
Note: Scoreboards may need handling for the waypoints.
/net/minecraft/world/entity/animal/wolf
Also properly mark the item dropped when shearing as force drops
net/minecraft/world/entity/vehicle/
Nothing much to note, reworked the loot table inventory serialization a bit
net/minecraft/world/level/
net/minecraft/world/entity/player
Note that a method was removed on Armorstand for a bug fix that makes literally zero sense, probably very old.
Also added and fixed the logic for leashes, as any entity can hold leashes but anything can be leashed.
Also very sad hack used to detect if the value was set.
/net/minecraft/world/level/block/entity/trialspawner/
/net/minecraft/server/network
ExperienceOrb award methods were consolidated to avoid this large of a
conflict in future versions for what is a single override.
Callers are expected to now pass null to the 3rd overload param as well.
Replaced the Boolean-based visual fire system with TriState for improved clarity and flexibility, enabling three distinct states: TRUE, FALSE, and NOT_SET. Deprecated older methods in favor of new ones and updated internal handling to reflect these changes. Adjusted serialization and deserialization logic to accommodate the new TriState implementation.
Previously the server attempted to compute the block placed by using the
BlockPlaceContext. This approach however fails on replacable blocks, as
the BlockPlaceContext computes this during its construction, which
happened after the actual world modification.
The commit reworks this approach and now stores metadata in the
InteractionResult which can later be read.
The diff is structured to allow for easy future expansion of the tracked
metadata.