예제 #1
0
 public ChoixDialogue(string tChoix1, string tChoix2, EtapeDialogue etape1, EtapeDialogue etape2)
 {
     texte_choix1   = tChoix1;
     texte_choix2   = tChoix2;
     dialogueChoix1 = etape1;
     dialogueChoix2 = etape2;
 }
예제 #2
0
        public void AfficherEtape(EtapeDialogue etape, bool etapeSecondaire = false)
        {
            if (etapeSecondaire == false)
            {
                etapeIndex++;
            }
            Popup popupAfficher = popupManager._PopupDialogue;

            popupManager.AjouterDemandePopup(() => {
                popupManager.AfficherPopup(popupAfficher);
                ((PopupDialogue)popupAfficher).ChangerTexte(etape);
                popupAfficher.OnPopupFermer.AddListener((choix) => {
                    Debug.Log("Prochaine étape, choix: " + choix);
                    if (choix == -1 || etape.choix == null)
                    {
                        if (etapeIndex < etapes.Count)
                        {
                            AfficherEtape(etapes[etapeIndex]);
                        }
                        else // Fin dialogue, car plus aucunes étapes restantes
                        {
                            OnDialogueFin.Invoke();
                            OnDialogueFin.RemoveAllListeners();
                        }
                    }
                    else if (choix == 0)
                    {
                        AfficherEtape(etape.choix.dialogueChoix1, true);
                    }
                    else if (choix == 1)
                    {
                        AfficherEtape(etape.choix.dialogueChoix2, true);
                    }
                });
            });
            //popupManager.AfficherProchainPopup();
        }