本文整理汇总了C#中Conversation.addDialogNode方法的典型用法代码示例。如果您正苦于以下问题:C# Conversation.addDialogNode方法的具体用法?C# Conversation.addDialogNode怎么用?C# Conversation.addDialogNode使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Conversation
的用法示例。
在下文中一共展示了Conversation.addDialogNode方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: loadNode
private static DialogNode loadNode(XmlElement xmlEl,
ref Conversation conversation,
ref List<DialogResponse> respWithoutChildren,
ref List<DialogResponse> respThatSwitchConv)
{
string id = xmlEl.GetAttribute("id");
string npcPhrase = xmlEl.GetAttribute("npcPhrase");
//string voiceFile = xmlEl.GetAttribute("voiceFile");
DialogNode node = new DialogNode(id, npcPhrase);
XmlNodeList responsesXNL = xmlEl.ChildNodes;
for (int j = 0; j < responsesXNL.Count; j++)
{
XmlElement responseXE = (XmlElement)responsesXNL[j];
string pcPhrase = responseXE.GetAttribute("pcPhrase");
string link = responseXE.GetAttribute("link");
ResponseLinkType linkType = ResponseLinkType.dialogNode;
if (responseXE.GetAttribute("linkType").
Equals("dialogNode"))
linkType = ResponseLinkType.dialogNode;
else if (responseXE.GetAttribute("linkType").
Equals("endConversation"))
linkType = ResponseLinkType.endConversation;
else
linkType = ResponseLinkType.endAndChangeConversation;
string switchConv = responseXE.
GetAttribute("switchConversation");
bool onlyAllowOnce = bool.Parse(responseXE.
GetAttribute("onlyAllowOnce"));
DialogResponse response = new DialogResponse(pcPhrase, link,
onlyAllowOnce, linkType, switchConv);
node.addResponse(response);
if (responseXE.HasChildNodes)
{
XmlElement childNode = (XmlElement)responseXE.FirstChild;
DialogNode dn = loadNode(childNode, ref conversation,
ref respWithoutChildren, ref respThatSwitchConv);
response.childNode = dn;
conversation.addDialogNode(dn);
}
else if (linkType == ResponseLinkType.dialogNode)
respWithoutChildren.Add(response);
if (linkType == ResponseLinkType.endAndChangeConversation)
respThatSwitchConv.Add(response);
}
return node;
}