public static QDLGTreeNode BuildDialogNodes( ResourceClass.QDLGFile.TransStruct trans) { if ((trans.nxDLG != "") && (trans.nxStateIndex > -1)) { ResourceClass.QDLGFile dfile = GetDialogFile(trans.nxDLG); return(new QDLGTreeNode(dfile, dfile.stateList[trans.nxStateIndex], trans.nxDLG == dlgFile.GetName())); } return(null); }
public QDLGTreeNode(ResourceClass.QDLGFile dlgFile, ResourceClass.QDLGFile.TransStruct trans) { this.isStateNode = false; this.dlgFile = dlgFile; this.trans = trans; if ((trans.nxDLG != "") && (trans.nxStateIndex > -1)) { // add dummy nodes this.Nodes.Add(new TreeNode("...")); } else { this.hasLoaded = true; } InitTreeNode(trans.srTransIndex); }
public static QDLGTreeNode[] BuildDialogNodes( ResourceClass.QDLGFile dfile, ResourceClass.QDLGFile.StateStruct state) { if (state.transCount > 0) { QDLGTreeNode[] nodes = new QDLGTreeNode[state.transCount]; int ptr = state.transIndex; for (int c = 0; c < state.transCount; c++) { ResourceClass.QDLGFile.TransStruct trans = dfile.transList[ptr + c]; nodes[c] = new QDLGTreeNode(dfile, trans); } return(nodes); } return(null); }