Exemple #1
0
    //显示所有的子节点

    private void UpdateWriterTree(List <DialogEvent> eventList)
    {
        CleanAllEvent();

        foreach (DialogEvent e in eventList)
        {
            MonoDialogEvent monoEvent = ShowEvent(e);
            foreach (DialogNode n in monoEvent.m_event.m_nodeList)
            {
                if (n.m_dialogType == DialogNode.NodeType.Talk)
                {
                    MonoTalkNode monoTalkNode = ShowTalkNode(n, monoEvent);
                    foreach (TalkContent content in monoTalkNode.m_node.m_talkContents)
                    {
                        MonoTalkContent monoTalkContent = ShowContent(content, monoTalkNode);
                    }
                }
                else
                {
                    MonoSelectionNode monoSelectionNode = ShowSelectionNode(n, monoEvent);
                    foreach (string t in monoSelectionNode.m_node.m_selection.Keys)
                    {
                        MonoTalkNode monoTalkNode = ShowSelectionTalkNode(monoSelectionNode.m_node.m_selection [t], monoSelectionNode);
                        foreach (TalkContent content in monoTalkNode.m_node.m_talkContents)
                        {
                            MonoTalkContent monoTalkContent = ShowContent(content, monoTalkNode);
                        }
                    }
                }
            }
        }
    }
Exemple #2
0
    private void OnSceneGUI()
    {
        m_monoTalkNode = target as MonoTalkNode;

        m_talkNode = m_monoTalkNode.m_node;

        UpdateNodeTree();
    }
Exemple #3
0
    void ShowContent(TalkContent talkNode, MonoTalkNode monoTalkNode)
    {
        GameObject go = new GameObject(talkNode.m_name + "-" + talkNode.GetType());

        go.transform.SetParent(monoTalkNode.transform);
        go.transform.position = Vector3.zero;

        MonoTalkContent monoCont = go.AddComponent <MonoTalkContent> ();

        monoCont.Init(talkNode);
    }
Exemple #4
0
    private void ShowSelectionNode(string node, MonoSelectionNode monoEvent)
    {
        GameObject go = new GameObject(node);

        go.transform.SetParent(monoEvent.transform);
        go.transform.position = Vector3.zero;

        MonoTalkNode selectionNode = go.AddComponent <MonoTalkNode> ();

        selectionNode.Init((TalkNode)m_selectionNode.m_selection [node]);
    }
Exemple #5
0
    private MonoTalkNode ShowSelectionTalkNode(DialogNode node, MonoSelectionNode monoEvent)
    {
        GameObject go = new GameObject(node.m_name + "-" + node.m_dialogType);

        go.transform.SetParent(monoEvent.transform);
        go.transform.position = Vector3.zero;

        MonoTalkNode talkNode = go.AddComponent <MonoTalkNode> ();

        talkNode.Init((TalkNode)node);
        return(talkNode);
    }
Exemple #6
0
    private void ShowNode(DialogNode node, MonoDialogEvent monoEvent)
    {
        GameObject go = new GameObject(node.m_name + "-" + node.m_dialogType);

        go.transform.SetParent(monoEvent.transform);
        go.transform.position = Vector3.zero;

        switch (node.m_dialogType)
        {
        case DialogNode.NodeType.Selection:
            MonoSelectionNode selectionNode = go.AddComponent <MonoSelectionNode> ();
            selectionNode.Init((SelectionNode)node);
            break;

        case DialogNode.NodeType.Talk:
            MonoTalkNode talkNode = go.AddComponent <MonoTalkNode> ();
            talkNode.Init((TalkNode)node);
            break;
        }
    }