using UnityEngine; public class HealthHandler : MonoBehaviour { [SerializeField] private float maxHealth; [SerializeField] private float currentHealth; [SerializeField] private float armor; public void TakeDamage(float damage) { Debug.Assert(damage >= 0, "Damage cannot be negative, use Heal if you want to heal"); currentHealth -= Mathf.Max(0, damage-armor); } public void Heal(float value) { Debug.Assert(value >= 0, "value can't be less than zero"); currentHealth = Mathf.Min(currentHealth + value, maxHealth); } public float GetArmor() { return armor; } public void EquipArmor(float armorBoost) { Debug.Assert(armorBoost >= 0, "armorBoost can't be less than zero, use UnEquipArmor instead"); armor += armorBoost; } public void UnEquipArmor(float armorBoost) { Debug.Assert(armorBoost >= 0, "armorBoost can't be less than zero, use EquipArmor instead"); armor -= armorBoost; } }