Пример #1
0
    void ShowOptions(DialogueComponent com)
    {
        this.ShowMessage(com.Dialogue);

        //Resetting options panel
        this.options.ForEach(x => x.gameObject.SetActive(false));


        if (com is DialogueComposite)
        {
            DialogueComposite composite = (DialogueComposite)com;
            for (int i = 0; i < composite.NumberOfOptions; i++)
            {
                var temp = i;
                this.options[i].gameObject.SetActive(true);
                this.options[i].transform.GetChild(0).GetComponent <Text>().text = composite.Get(temp).Option;

                this.options[i].GetComponent <Button>().onClick.AddListener(() =>
                {
                    this.Display(composite, temp);
                });
            }
        }
        else
        {
            Debug.Log("End LEAF NODE");
        }
    }
Пример #2
0
    void InitializeDialogues()
    {
        root       = new DialogueComposite("", string.Format("Hi there, {0}", this.name)); //;Level 1
        levelTwo   = new DialogueComposite("Level 2", "Reply 2");                          //;Level 2
        levelThree = new DialogueComposite("Level 3", "Reply 3");                          //;Level 3
        levelFour  = new DialogueComposite("Level 4", "Reply 4");                          //;Level 4
        levelFive  = new DialogueComposite("Level 5", "Reply 5");                          //;Level 2

        root.AddOption(levelTwo);
        root.AddOption(new Dialogue("L1_PO_A", "L1_Reply A"));
        root.AddOption(new Dialogue("L1_PO_B", "L1_Reply B"));


        levelTwo.AddOption(levelThree);
        levelTwo.AddOption(new Dialogue("L2_PO_A", "L2_Reply A"));
        levelTwo.AddOption(new Dialogue("L2_PO_B", "L2_Reply B"));

        levelThree.AddOption(new Dialogue("L3_PO_A", "L3_Reply A"));
        levelThree.AddOption(levelFour);
        levelThree.AddOption(new Dialogue("L3_PO_B", "L3_Reply B"));

        levelFour.AddOption(new Dialogue("L4_PO_A", "L4_Reply A"));
        levelFour.AddOption(levelFive);
        levelFour.AddOption(new Dialogue("L4_PO_B", "L4_Reply B"));
        levelFour.AddOption(new Dialogue("L4_PO_C", "L4_Reply C"));

        levelFive.AddOption(new Dialogue("L5_PO_A", "L5_Reply A"));
        levelFive.AddOption(new Dialogue("L5_PO_B", "L5_Reply B"));
        levelFive.AddOption(new Dialogue("L5_PO_C", "L5_Reply C"));
        levelFive.AddOption(new Dialogue("L5_PO_D", "L5_Reply D"));
        levelFive.AddOption(new Dialogue("L5_PO_E", "L5_Reply E"));



        ShowOptions(root);
    }