using UnityEngine; using UnityEngine.Events; /// /// A simple Timer to demonstrate Progress Bars /// public class Timer : MonoBehaviour { [SerializeField] float timerMin = 3f, timerMax = 10f; float timer = 10f; [SerializeField] bool randomStart; public UnityEvent timerEvent; float _time = 0; public float TheTime { get => _time; set { _time = value; if (_time > 1f) _time = 0; timerEvent?.Invoke(_time); } } private void Start() { timer = Random.Range(timerMin, timerMax); if (randomStart) TheTime = Random.Range(0f, 1f); } private void Update() { TheTime += Time.deltaTime / timer; } }