0
0
mirror of https://github.com/sp-tarkov/modules.git synced 2025-02-13 09:50:43 -05:00
2023-03-03 18:52:31 +00:00

49 lines
1.2 KiB
C#

using System.Collections.Generic;
namespace Aki.SinglePlayer.Models.Healing
{
public class BodyPartHealth
{
private readonly Dictionary<EBodyPartEffect, float> _effects = new Dictionary<EBodyPartEffect, float>();
public float Maximum { get; private set; }
public float Current { get; private set; }
public IReadOnlyDictionary<EBodyPartEffect, float> Effects => _effects;
public void Initialize(float current, float maximum)
{
Maximum = maximum;
Current = current;
}
public void ChangeHealth(float diff)
{
Current += diff;
}
public void AddEffect(EBodyPartEffect bodyPartEffect, float time = -1)
{
_effects[bodyPartEffect] = time;
}
public void UpdateEffect(EBodyPartEffect bodyPartEffect, float time)
{
_effects[bodyPartEffect] = time;
}
public void RemoveAllEffects()
{
_effects.Clear();
}
public void RemoveEffect(EBodyPartEffect bodyPartEffect)
{
if (_effects.ContainsKey(bodyPartEffect))
{
_effects.Remove(bodyPartEffect);
}
}
}
}