No Starving
Food items by default effect two systems: Health (via nutrition, your hearts) and Saturation (your drumsticks). This removes the saturation feature entirely, making food heal hearts directly.
Why
I find the split healing system tedius and wanted to remove it from my server. I couldn't find any existing mods that simply and efficiently addressed this mechanic, and only this mechanic, so I learned how to do it myself and am now uploading it on the off-chance someone feels similarly.
How
This uses the fabric/spongepowered Mixin API to inject directly into the FoodData class, Hud class, and Player class.
Server side
The actual core logic lives in the common/server side overrides. FoodData is modified such that any eat API (injecting over the internal shared add method) results in just increasing the foodLevel tracked each tick. Then, the tick is overwriten such that it re-asserts maximum saturation (for hopefully yielding maximum compatibility with other mods) and removing exhaustion. The player is then healed directly by any food eaten this tick.
Client side
The client side code simply hides the saturation bar (drumstick indicator) by injecting over the private method that does the sprite blit. By skipping this step, boss indicators and the like should be preserved.
