Files
Two-World/Assets/Scripts/Health.cs
2025-05-08 09:24:43 +09:00

28 lines
612 B
C#

using UnityEngine;
public class Health : MonoBehaviour, IDamageable
{
private float _currentHealth;
[SerializeField]
private float _maxHealth = 100.0f;
public event DamageEventHandler OnDamageTaken;
private void Awake()
{
_currentHealth = _maxHealth;
}
public void Damage(float damageAmount)
{
var oldHealth = _currentHealth;
_currentHealth -= damageAmount;
OnDamageTaken?.Invoke(new DamageData
{
oldHealth = oldHealth,
newHealth = _currentHealth,
damageAmount = damageAmount
});
}
}