Esempio n. 1
0
 public void PickLine(DialogueMessage[] arrayOfLines)
 {
     if (gameObject.tag == "Enemy")
     {
         OnAnswerConfirmed.Invoke(arrayOfLines[UnityEngine.Random.Range(0, arrayOfLines.Length)]);
     }
     else if (gameObject.tag == "Player")
     {
         StartCoroutine(WaitForAnswer(arrayOfLines));
         choosingMode = true;
         myCanvas.gameObject.SetActive(true);
         arrayOfLines.Shuffle();
         for (int i = 0; i < arrayOfLines.Length; i++)
         {
             GameObject chosenButton = Instantiate(answerButton, new Vector2(0, 0), Quaternion.identity, myCanvas.transform);
             chosenButton.GetComponent <TextMeshProUGUI> ().text = arrayOfLines[i].dialogueMessage;
             if (i == 0)
             {
                 chooseButton(chosenButton);
             }
             chosenButton.GetComponent <CanBeSelected> ().myDialogue = arrayOfLines[i];
             listOfAnswers.Add(chosenButton);
         }
         StopCoroutine(WaitForAnswer(arrayOfLines));
         currentID = 0;
     }
 }
Esempio n. 2
0
    private void confirmAnswer(DialogueMessage selectedAnswer)
    {
        if (OnAnswerConfirmed != null)
        {
            OnAnswerConfirmed.Invoke(selectedAnswer);
            choosingMode = false;

            foreach (var item in listOfAnswers)
            {
                Destroy(item);
            }
            listOfAnswers.Clear();
        }
    }