update ui less often
This commit is contained in:
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user