using UnityEngine; using UnityEngine.InputSystem; using TMPro; namespace NeonTea.Quakeball.Interface { public class Stopwatch : MonoBehaviour { public TMP_Text TimingText; private InputAction ToggleTiming; private float StartTime; private bool CurrentlyTiming = false; private void Awake() { ToggleTiming = new InputAction("Toggle stopwatch", binding: "/t"); ToggleTiming.performed += _ => { if (CurrentlyTiming) { UpdateTiming(); CurrentlyTiming = false; } else { StartTime = Time.fixedTime; CurrentlyTiming = true; } }; ToggleTiming.Enable(); } private void FixedUpdate() { if (CurrentlyTiming) { UpdateTiming(); } } private void UpdateTiming() { float Duration = Time.fixedTime - StartTime; TimingText.text = Duration.ToString("0.00") + " s"; } } }