Exemple #1
0
    public IEnumerator DisplayDialog(DialogLines dialog, bool triggerBattle)
    {
        // takes in a listof string to show sequencially in the dialog Box
        this.triggerBattle = triggerBattle;
        yield return(new WaitForEndOfFrame());

        // pausar y esperar 1 frame para no generar errores con HandleUpdate,
        // ya que el usuario está presionando la tecla Espacio en el mismo frame
        // al llamar a una corrutina, la función que la llama se covnierte en corrutina también.

        OnStartDialog?.Invoke();

        this.theDialog = dialog;

        dialogBox.SetActive(true);
        StartCoroutine(GenerateText(dialog.Lines[0]));
    }
    public void StartConversation(Conversation conversation)
    {
        if (conversation.IsTutorial() && ProgressionManager.Instance.GetDisplayedTutorial())
        {
            return;
        }

        canvasManager.EnableNextButton();
        OnStartDialog.Invoke();
        dialogs.Clear();

        foreach (Dialog dialog in conversation.Dialogs)
        {
            dialogs.Enqueue(dialog);
        }

        DisplayNextDialog();
    }
Exemple #3
0
 public void EventDialog()
 {
     Debug.Log("EventDialog");
     OnStartDialog?.Invoke(0);
 }