Пример #1
0
        /// <summary>
        /// ワールド拡張の服装リストを取得する
        /// </summary>
        /// <param name="compInfo"></param>
        /// <returns></returns>
        private static string[] getKagexCharDressList(KagTagKindInfo compInfo)
        {
            string name = getKagexCharNameFromAttrTable(compInfo);

            if (name == "")
            {
                return(null);                   //キャラクター名が指定されていない
            }
            kkde.parse.kagex.KagexCompletionUnit cu = GlobalStatus.ParserSrv.GetKagexEnvinitInfo();
            if (cu == null)
            {
                return(null);                   //ワールド拡張が読み込めていない
            }
            string pose = getKagexCharPoseFromAttrTable(compInfo, cu);

            if (pose == "")
            {
                return(null);                   //キャラクター名が指定されていない
            }

            List <string> list = cu.GetCharDressList(name, pose);

            if (list == null)
            {
                return(null);
            }

            return(list.ToArray());
        }
Пример #2
0
        /// <summary>
        /// ダイアログを表示したとき
        /// </summary>
        private void WorldExObjectSelectDialog_Shown(object sender, EventArgs e)
        {
            m_cu = GlobalStatus.ParserSrv.GetKagexEnvinitInfo();
            if (m_cu == null)
            {
                return;                 //初期化できるデータがない
            }

            if (m_mode == Mode.Event)
            {
                initListViewItem(m_cu.GetEventList());
            }
            else if (m_mode == Mode.Stage)
            {
                initListViewItem(m_cu.GetStageList());
            }

            if (m_selectedText != "")
            {
                foreach (ListViewItem item in objectListView.Items)
                {
                    if (item.Text == m_selectedText)
                    {
                        item.Selected = true;                                                   //選択状態にする
                        objectListView.EnsureVisible(item.Index);                               //見える位置までスクロールする
                        break;
                    }
                }
            }
            objectListView.Focus();
        }
Пример #3
0
        /// <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);
                        }
                    }
                }
            }
        }
Пример #4
0
        /// <summary>
        /// プロパティ情報のコンバーターを更新する
        /// </summary>
        public void UpdatePropertyGridConverter()
        {
            //リスト情報初期化
            kkde.parse.kagex.KagexCompletionUnit cu = GlobalStatus.ParserSrv.GetKagexEnvinitInfo();
            if (cu == null)
            {
                return;
            }

            PropertyGridWorldExActionConverter.SetList(cu.GetActionList());
            PropertyGridWorldExStimeConverter.SetList(cu.GetTimeList());
            PropertyGridWorldExTransConverter.SetList(cu.GetTransList());
            PropertyGridWorldExPosConverter.SetList(cu.GetPosList());
            PropertyGridWorldExLevelConverter.SetList(cu.GetLevelList());
        }
Пример #5
0
        /// <summary>
        /// すでにかかれている属性リストからキャラクターの姿勢を取得する
        /// </summary>
        /// <param name="compInfo"></param>
        /// <param name="cu"></param>
        /// <returns></returns>
        private static string getKagexCharPoseFromAttrTable(KagTagKindInfo compInfo, kkde.parse.kagex.KagexCompletionUnit cu)
        {
            string pose;

            if (compInfo.AttrTable.ContainsKey("pose"))
            {
                pose = compInfo.AttrTable["pose"];
            }
            else
            {
                pose = "";
            }

            return(pose);
        }
Пример #6
0
        /// <summary>
        /// ワールド拡張のトランジションリストを取得する
        /// </summary>
        /// <returns></returns>
        private static string[] getKagexTransList()
        {
            kkde.parse.kagex.KagexCompletionUnit cu = GlobalStatus.ParserSrv.GetKagexEnvinitInfo();
            if (cu == null)
            {
                return(null);                   //ワールド拡張が読み込めていない
            }

            List <string> list = cu.GetTransList();

            if (list == null)
            {
                return(null);
            }

            return(list.ToArray());
        }
Пример #7
0
        /// <summary>
        /// KAGEXワールド拡張のキャラクタ名リストを取得する
        /// </summary>
        /// <param name="compInfo"></param>
        /// <returns></returns>
        private static string[] getKagexCharNameList(KagTagKindInfo compInfo)
        {
            kkde.parse.kagex.KagexCompletionUnit cu = GlobalStatus.ParserSrv.GetKagexEnvinitInfo();
            if (cu == null)
            {
                return(null);
            }

            List <string> list = cu.GetCharNameList();

            if (list == null)
            {
                return(null);
            }

            return(list.ToArray());
        }