//显示所有的子节点 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); } } } } } }
private void OnEnable() { m_monoDialogEvent = target as MonoDialogEvent; m_dialogEvent = m_monoDialogEvent.m_event; UpdateEventTree(); }
private MonoDialogEvent ShowEvent(DialogEvent e) { GameObject go = new GameObject(e.m_name + "-" + e.GetType()); go.transform.SetParent(m_monoDialogWriter.transform); go.transform.position = Vector3.zero; MonoDialogEvent monoEvent = go.AddComponent <MonoDialogEvent> (); monoEvent.Init(e); return(monoEvent); }
private MonoSelectionNode ShowSelectionNode(DialogNode node, MonoDialogEvent monoEvent) { GameObject go = new GameObject(node.m_name + "-" + node.m_dialogType); go.transform.SetParent(monoEvent.transform); go.transform.position = Vector3.zero; MonoSelectionNode selectionNode = go.AddComponent <MonoSelectionNode> (); selectionNode.Init((SelectionNode)node); return(selectionNode); }
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; } }