/// <summary> /// キャラクターの状態を更新する /// </summary> private void initChar() { m_cu = GlobalStatus.ParserSrv.GetKagexEnvinitInfo(); if (m_cu == null) { return; //初期化できるデータがない } m_rootNode.Nodes.Clear(); List <string> nameList = m_cu.GetCharNameList(); foreach (string name in nameList) //名前追加 { if (filterCharItem(name, CharParts.Name) == false) { continue; //表示できない } TreeNode nameNode = m_rootNode.Nodes.Add(name); List <string> poseList = m_cu.GetCharPoseList(name); foreach (string pose in poseList) //姿勢追加 { if (filterCharItem(pose, CharParts.Pose) == false) { continue; //表示できない } TreeNode poseNode = nameNode.Nodes.Add(pose); List <string> dressList = m_cu.GetCharDressList(name, pose); List <string> faceList = m_cu.GetCharFaceList(name, pose); foreach (string dress in dressList) //服装追加 { if (filterCharItem(dress, CharParts.Dress) == false) { continue; //表示できない } TreeNode dressNode = poseNode.Nodes.Add(dress); foreach (string face in faceList) //表情追加 { if (filterCharItem(face, CharParts.Face) == false) { continue; //表示できない } dressNode.Nodes.Add(face); } } } } }
/// <summary> /// KAGEXワールド拡張のキャラクター姿勢名リストを取得する /// </summary> /// <param name="compInfo"></param> /// <returns></returns> private static string[] getKagexCharPoseList(KagTagKindInfo compInfo) { string name = getKagexCharNameFromAttrTable(compInfo); if (name == "") { return(null); //キャラクター名が指定されていない } kkde.parse.kagex.KagexCompletionUnit cu = GlobalStatus.ParserSrv.GetKagexEnvinitInfo(); if (cu == null) { return(null); } List <string> list = cu.GetCharPoseList(name); if (list == null) { return(null); } return(list.ToArray()); }