From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Martijn Muijsers Date: Fri, 23 Dec 2022 15:40:22 +0100 Subject: [PATCH] Fix MC-31819 License: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html) Gale - https://galemc.org This patch is based on the following patch: "Fix hunger saturation depleting on peaceful" By: etil2jz <81570777+etil2jz@users.noreply.github.com> As part of: Mirai (https://github.com/etil2jz/Mirai) Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html) * Mirai description * The food saturation value is depleted on peaceful, even though the displayed hunger bar never goes down. Hunger (or any related value, including saturation) should not go down on peaceful. See https://bugs.mojang.com/browse/MC-31819. diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java index 2b02800666b358159c8ecb63208a14855f90657b..9e7b5b876ec7aa90bf46afa6992fc59e67aedc9b 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -1896,6 +1896,11 @@ public abstract class Player extends LivingEntity { } public void causeFoodExhaustion(float f, EntityExhaustionEvent.ExhaustionReason reason) { + // Gale start - Mirai - fix MC-31819 + if (this.level.galeConfig().gameplayMechanics.fixes.mc31819 && this.level.getDifficulty() == Difficulty.PEACEFUL) { + return; + } + // Gale end - Mirai - fix MC-31819 // CraftBukkit end if (!this.abilities.invulnerable) { if (!this.level.isClientSide) { diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java index 899aa60e2c20c4d973777d4f82f524e2fb902c93..aab67ad8212bdc5a8afe9b1a9634bde3f78eb496 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java @@ -301,6 +301,11 @@ public class GaleWorldConfiguration extends ConfigurationPart { public boolean mc110386 = true; // Gale end - Mirai - fix MC-110386 + // Gale start - Mirai - fix MC-31819 + @Setting("mc-31819") + public boolean mc31819 = true; + // Gale end - Mirai - fix MC-31819 + } }