IEnumerator InitiateRound() { initiated = true; roundWinner = null; gameWinner = null; //Just in case.. roundWasDraw = false; float camResetTime = 1f; cam.SetCameraTargetPosition(cam.StartPosition, camResetTime); yield return(new WaitForSeconds(camResetTime)); int count = roundCountDownTime; while (count > 0) { ui.SetMiddleScreenText(count.ToString()); count--; yield return(new WaitForSeconds(1f)); } ui.SetMiddleScreenText("GO!"); state = GameState.Round; initiated = false; yield return(new WaitForSeconds(0.5f)); ui.DisableMiddleScreenText(); }