public void PlayWordGame(WordGameData wordGameData) { for (int i = 0; i < buttonList.Length; i++) { buttonList[i].interactable = false; } StartCoroutine(WordGameCoroutine(wordGameData)); }
IEnumerator WordGameCoroutine(WordGameData wordGameData) { for (int i = 0; i < wordGameData.wordGameRows.Length; i++) { string[] buttonRowString = { wordGameData.wordGameRows[i].words[0], wordGameData.wordGameRows[i].words[1], wordGameData.wordGameRows[i].words[2] }; buttonRow.SetRow(buttonRowString); for (int j = 0; j < buttonList.Length; j++) { buttonList[j].GetComponent <Image>().color = normalColor; buttonList[j].interactable = true; } mainPanel.SetActive(true); currentAnswerIndex = wordGameData.wordGameRows[i].correctOption; awaitingInput = true; while (awaitingInput) { yield return(null); } yield return(new WaitForSeconds(2)); } onGameComplete?.Raise(); yield return(null); }