public virtual void Initialize() { Health = _unit.UnitData.MaxHealth; MaxHealth = Health; OnCurrentHealthChanged?.Invoke(Health); OnMaxHealthChanged?.Invoke(MaxHealth); }
public virtual void TakeDamage(int damage, DamageType damageType, Unit attacker) { Health -= damage; OnCurrentHealthChanged?.Invoke(Health); if (Health <= 0) { OnDefeated?.Invoke(); } OnTakeDamage?.Invoke(damage, damageType, attacker); }