using UnityEngine;
using UnityEngine.UI;
using UnityAtoms.BaseAtoms;
namespace UnityAtoms.Examples
{
///
/// A healthbar component that sets the fill amount of its associated UI Image accordingly.
///
[AddComponentMenu("Unity Atoms/Examples/HealthBar")]
public class HealthBar : MonoBehaviour
{
public IntReference InitialHealth { get => _initialHealth; }
[SerializeField]
private IntReference _initialHealth = null;
[SerializeField]
private Image _image;
void Awake()
{
if (_image == null)
{
_image = GetComponent();
}
}
public void HealthChanged(int health) => _image.fillAmount = 1.0f * health / _initialHealth.Value;
}
}