IEnumerator DoIncorrect(BreezeButton _button = null) { AudioManager.PlaySFX("incorrect"); CorrectButton.targetGraphic.DOColor(Color.green, 0.5f).OnComplete(() => { CorrectButton.targetGraphic.color = Color.white; }); if (_button != null) { _button.targetGraphic.DOColor(Color.red, 0.5f).OnComplete(() => { _button.targetGraphic.color = Color.white; }); } yield return(new WaitForSeconds(0.75f)); localstats.incorrect++; currentQuestion++; stats.questionIndex++; if (difficulty == DIFFICULTY.MARATHON) { lives--; } GenerateQuestion(); }
void SetupOptions(Question temp) { //Debug.Log(temp.correct_answer); switch (temp.type) { case "boolean": SetButtonText(buttons[0], "True"); buttons[0].transform.SetAsFirstSibling(); SetButtonText(buttons[1], "False"); buttons[1].transform.SetAsLastSibling(); EnableButton(buttons[2], false); EnableButton(buttons[3], false); RemoveAllButtonListeners(); if (buttons[0].GetComponentInChildren <TextMeshProUGUI>().text == temp.correct_answer) { buttons[0].onClick.AddListener(CorrectAnswer); CorrectButton = buttons[0]; } else { buttons[0].onClick.AddListener(() => { IncorrectAnswer(buttons[0]); }); } if (buttons[1].GetComponentInChildren <TextMeshProUGUI>().text == temp.correct_answer) { buttons[1].onClick.AddListener(CorrectAnswer); CorrectButton = buttons[1]; } else { buttons[1].onClick.AddListener(() => { IncorrectAnswer(buttons[1]); }); } break; case "multiple": EnableAllButtons(true); SetButtonText(buttons[0], temp.incorrect_answers[0]); SetButtonText(buttons[1], temp.incorrect_answers[1]); SetButtonText(buttons[2], temp.incorrect_answers[2]); SetButtonText(buttons[3], temp.correct_answer); //Setup Actions RemoveAllButtonListeners(); buttons[0].onClick.AddListener(() => { IncorrectAnswer(buttons[0]); }); buttons[1].onClick.AddListener(() => { IncorrectAnswer(buttons[1]); }); buttons[2].onClick.AddListener(() => { IncorrectAnswer(buttons[2]); }); buttons[3].onClick.AddListener(CorrectAnswer); CorrectButton = buttons[3]; foreach (var item in buttons) { item.transform.SetSiblingIndex(UnityEngine.Random.Range(0, buttons.Count)); } //BreezeHelpers.ShuffleList(buttons); break; } SetButtonsInteractivity(true); }
void IncorrectAnswer(BreezeButton _button = null) { SetButtonsInteractivity(false); StartCoroutine(DoIncorrect(_button)); }