Files
2025-08-31 18:14:07 -04:00

40 lines
945 B
C#

using System;
using UnityEngine;
namespace Ingvar.LiveWatch.TowerDefenceDemo
{
public class MobHealthBar : MonoBehaviour
{
[SerializeField] private MobMain mob;
[SerializeField] private Transform bar;
private Camera _mainCamera;
private void Awake()
{
_mainCamera = Camera.main;
}
private void OnEnable()
{
mob.Health.HealthChanged += RefreshBar;
RefreshBar();
}
private void OnDisable()
{
mob.Health.HealthChanged -= RefreshBar;
}
private void LateUpdate()
{
transform.rotation = _mainCamera.transform.rotation;
}
private void RefreshBar()
{
var progress = (float)mob.Health.CurrentHealth / mob.Health.MaxHealth;
bar.localScale = new Vector3(progress, bar.localScale.y, bar.localScale.z);
}
}
}