public void Update() { if (!reviewing) { return; } reviewTimer += Time.deltaTime; if (reviewTimer > stateMachine.GetGameBlueprint().timeBetweenNumbersDisplayed) { reviewTimer = 0; bool correctInput = stateMachine.AreEqualByIndex(currentReviewIndex); stateMachine.TriggerHUDEvent(UIEvents.Type.PrepareCombinationNumber, stateMachine.GetUserInputNumber(currentReviewIndex).ToString()); //spawn anim number stateMachine.TriggerHUDEvent(UIEvents.Type.SpawnAnimNumber, stateMachine.GetUserInputNumber(currentReviewIndex).ToString()); //display combo number as incorrect or correct stateMachine.TriggerHUDEvent(UIEvents.Type.DisplayCombinationNumber, correctInput ? CombinationDisplay.Type.Correct.ToString() : CombinationDisplay.Type.InCorrect.ToString()); //play correct or incorrect sound stateMachine.PlaySound(correctInput ? AudioFiles.GameplaySoundClip.Correct : AudioFiles.GameplaySoundClip.Incorrect); if (correctInput) { pointsThisRound += stateMachine.GetGameBlueprint().pointsPerCorrectAnswer; } else { perfectRound = false; stateMachine.detectionLevel += stateMachine.GetGameBlueprint().incorrectPenalty; stateMachine.TriggerHUDEvent(UIEvents.Type.UpdateDetectionSlider, stateMachine.detectionLevel.ToString()); } //Review Complete if (currentReviewIndex == stateMachine.GetRound() - 1) { reviewing = false; DetermineNextSteps(); } currentReviewIndex++; } }