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(); }
public void EventDialog() { Debug.Log("EventDialog"); OnStartDialog?.Invoke(0); }