update ui less often

This commit is contained in:
2022-12-14 17:42:28 +01:00
parent 8565ae77cd
commit e24d9b86a9

View File

@@ -31,10 +31,13 @@ namespace EscapeRoomEngine.Engine.Runtime.UI
private Button startButton, stopButton, pauseButton, addTimeButton, removeTimeButton;
[BoxGroup("Internal")] [SerializeField]
private Text timeText, targetTimeText, estimateTimeText;
[BoxGroup("Internal")] [SerializeField]
private float uiUpdateInterval = 1;
[HideInInspector] public GameState gameState = GameState.Stopped;
private float _timeElapsed, _targetTime;
private float _previousUIUpdate;
private void Awake()
{
@@ -48,15 +51,21 @@ namespace EscapeRoomEngine.Engine.Runtime.UI
private void Update()
{
// Update time
// update time
if (gameState == GameState.Running)
{
_timeElapsed += Time.deltaTime;
}
// update ui
if (Time.time > _previousUIUpdate + uiUpdateInterval)
{
_previousUIUpdate = Time.time;
SetTimeText();
}
// Enable or disable buttons
// enable or disable buttons
startButton.interactable = gameState == GameState.Stopped;
stopButton.interactable = gameState != GameState.Stopped;
pauseButton.interactable = gameState is GameState.Running or GameState.Paused;