From a313903455255b5f719a491e7fac5c4e02a3ab0f Mon Sep 17 00:00:00 2001 From: Melledy <121644117+Melledy@users.noreply.github.com> Date: Mon, 13 Nov 2023 22:19:40 -0800 Subject: [PATCH] Add stamina recovery rates into config --- src/main/java/emu/lunarcore/Config.java | 10 ++++++++++ src/main/java/emu/lunarcore/game/player/Player.java | 5 +++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/main/java/emu/lunarcore/Config.java b/src/main/java/emu/lunarcore/Config.java index 2b153e9..e244b18 100644 --- a/src/main/java/emu/lunarcore/Config.java +++ b/src/main/java/emu/lunarcore/Config.java @@ -85,7 +85,17 @@ public class Config { public static class ServerOptions { public int entitySceneLimit = 2000; public boolean spendStamina = true; + public int staminaRecoveryRate = 5 * 60; + public int staminaReserveRecoveryRate = 18 * 60; public Set defaultPermissions = Set.of("*"); + + public int getStaminaRecoveryRate() { + return staminaRecoveryRate > 0 ? staminaRecoveryRate : 1; + } + + public int getStaminaReserveRecoveryRate() { + return staminaReserveRecoveryRate > 0 ? staminaReserveRecoveryRate : 1; + } } @Getter diff --git a/src/main/java/emu/lunarcore/game/player/Player.java b/src/main/java/emu/lunarcore/game/player/Player.java index db627a7..f60d5c3 100644 --- a/src/main/java/emu/lunarcore/game/player/Player.java +++ b/src/main/java/emu/lunarcore/game/player/Player.java @@ -398,7 +398,8 @@ public class Player { this.stamina += 1; hasChanged = true; } else if (this.stamina < GameConstants.MAX_STAMINA_RESERVE) { - double amount = (time - this.nextStaminaRecover) / (18D * 60D * 1000D); + double rate = LunarCore.getConfig().getServerOptions().getStaminaReserveRecoveryRate(); + double amount = (time - this.nextStaminaRecover) / (rate * 1000D); this.staminaReserve = Math.min(this.staminaReserve + amount, GameConstants.MAX_STAMINA_RESERVE); hasChanged = true; } @@ -408,7 +409,7 @@ public class Player { this.nextStaminaRecover = time; } - this.nextStaminaRecover += 5 * 60 * 1000; + this.nextStaminaRecover += LunarCore.getConfig().getServerOptions().getStaminaRecoveryRate() * 1000; } // Send packet