From 24e208c560c6342844ca70204e824992835a7cbe Mon Sep 17 00:00:00 2001 From: Lucca Faria Ferri Date: Wed, 5 Jul 2023 13:43:31 -0700 Subject: [PATCH] Health/Damage multipliers in settings by difficulty. --- src/DiIiS-NA/D3-GameServer/GSSystem/GameSystem/Game.cs | 4 ++-- src/DiIiS-NA/D3-GameServer/GameModsConfig.cs | 10 ++-------- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/src/DiIiS-NA/D3-GameServer/GSSystem/GameSystem/Game.cs b/src/DiIiS-NA/D3-GameServer/GSSystem/GameSystem/Game.cs index 76796e6..1cd1805 100644 --- a/src/DiIiS-NA/D3-GameServer/GSSystem/GameSystem/Game.cs +++ b/src/DiIiS-NA/D3-GameServer/GSSystem/GameSystem/Game.cs @@ -1287,8 +1287,8 @@ namespace DiIiS_NA.GameServer.GSSystem.GameSystem } else { - HpModifier = GameModsConfig.Instance.Rate.HealthByDifficulty[Difficulty] * GameModsConfig.Instance.Monster.HealthMultiplier; - DmgModifier = GameModsConfig.Instance.Rate.GetDamageByDifficulty(Difficulty) * GameModsConfig.Instance.Monster.DamageMultiplier; + HpModifier = GameModsConfig.Instance.Rate.HealthByDifficulty[diff] * GameModsConfig.Instance.Monster.HealthMultiplier; + DmgModifier = GameModsConfig.Instance.Rate.GetDamageByDifficulty(diff) * GameModsConfig.Instance.Monster.DamageMultiplier; XpModifier = 1f + GameModsConfig.Instance.Rate.Experience; GoldModifier = (1f * GameModsConfig.Instance.Rate.Gold); } diff --git a/src/DiIiS-NA/D3-GameServer/GameModsConfig.cs b/src/DiIiS-NA/D3-GameServer/GameModsConfig.cs index d18cf06..4e3b28b 100644 --- a/src/DiIiS-NA/D3-GameServer/GameModsConfig.cs +++ b/src/DiIiS-NA/D3-GameServer/GameModsConfig.cs @@ -14,15 +14,9 @@ public class RateConfig { public float GetDamageByDifficulty(int diff) { + if (diff < 0) diff = 0; if (diff > 19) diff = 19; - if (!DamageByDifficulty.ContainsKey(diff) || Math.Abs(DamageByDifficulty[diff] - (-1)) < 0.001) - { - if (diff == 0) - return 1; - return GetDamageByDifficulty(diff - 1); - } - - return DamageByDifficulty[diff]; + return !DamageByDifficulty.ContainsKey(diff) ? 1f : DamageByDifficulty[diff]; } public Dictionary HealthByDifficulty { get; set; } = new() {