예제 #1
0
파일: ItemCtrl.cs 프로젝트: napatkung/qysg
        public static string GetIdByCode(string code)
        {
            string id = "";

            foreach (var item in m_ItemDefList)
            {
                if (CFormat.ToTraditional(CFormat.PureString(code)) == CFormat.ToTraditional(CFormat.PureString("item_" + item.name)))
                {
                    return(item.id);
                }
            }

            return(id);
        }
예제 #2
0
파일: ItemCtrl.cs 프로젝트: napatkung/qysg
        public static string GetItemHelp(string id)
        {
            string name = "";

            foreach (var item in m_ItemHelpList)
            {
                if (CFormat.ToTraditional(CFormat.PureString(id)) == CFormat.ToTraditional(CFormat.PureString(item.id)))
                {
                    return(item.name);
                }
            }

            return(name);
        }
예제 #3
0
        private void FillItemLstV()
        {
            List <Item_Str> itemList = ItemCtrl.GetItemList();

            lstv_ItemList.Items.Clear();
            foreach (var item in itemList)
            {
                string code = item.code;
                string id   = ItemCtrl.GetIdByCode(code);

                ListViewItem lvi = new ListViewItem();
                lvi.Text = CFormat.PureString(id);
                lvi.SubItems.Add(CFormat.PureString(code));
                lstv_ItemList.Items.Add(lvi);
            }
            lstv_ItemList.EndUpdate();
        }
예제 #4
0
파일: ItemCtrl.cs 프로젝트: napatkung/qysg
        public static bool LoadItemDefList()
        {
            //文件存在
            if (!File.Exists("profile\\ITEM.H"))
            {
                return(false);
            }

            //读取
            m_ItemDefList.Clear();

            FileStream   fs     = new FileStream("profile\\ITEM.H", FileMode.Open, FileAccess.Read);
            StreamReader reader = new StreamReader(fs, Encoding.GetEncoding(950));

            reader.DiscardBufferedData();
            reader.BaseStream.Seek(0, SeekOrigin.Begin);
            reader.BaseStream.Position = 0;

            string strLine = "";

            strLine = reader.ReadLine();
            while (strLine != null)
            {
                strLine = strLine.Split('/')[0];
                if (strLine.Contains("#define"))
                {
                    ItemDef_Str playerDef;
                    string      tmp  = strLine.Split(new string[] { "item_" }, StringSplitOptions.RemoveEmptyEntries)[1];
                    string      name = tmp.Split(' ')[0].Split('\t')[0];
                    string      id   = tmp.Replace(" ", "").Replace("\\t", "").Replace(name, "");

                    playerDef.id   = CFormat.PureString(id);
                    playerDef.name = CFormat.PureString(name);
                    m_ItemDefList.Add(playerDef);
                }
                strLine = null;
                strLine = reader.ReadLine();
            }

            reader.Close();
            fs.Close();

            return(true);
        }
예제 #5
0
파일: ItemCtrl.cs 프로젝트: napatkung/qysg
        public static bool LoadItemList()
        {
            //文件存在
            if (!File.Exists("profile\\ITEM.TXT"))
            {
                return(false);
            }

            //读取
            m_ItemList.Clear();

            FileStream   fs     = new FileStream("profile\\ITEM.TXT", FileMode.Open, FileAccess.Read);
            StreamReader reader = new StreamReader(fs, Encoding.GetEncoding(950));

            reader.DiscardBufferedData();
            reader.BaseStream.Seek(0, SeekOrigin.Begin);
            reader.BaseStream.Position = 0;

            Item_Str item;

            item.code        = "";
            item.name        = "";
            item.cost        = "";
            item.sell        = "";
            item.help_string = "";
            item.limit_level = "";
            item.more        = new List <string>();

            bool   get     = false;
            string strLine = "";

            strLine = reader.ReadLine();
            while (strLine != null)
            {
                strLine = strLine.Split('/')[0];

                if (strLine.Contains("[item]") && strLine.Contains("[item]"))
                {
                    if (get)
                    {
                        //add army
                        m_ItemList.Add(item);
                    }
                    get              = true;
                    item.code        = "";
                    item.name        = "";
                    item.cost        = "";
                    item.sell        = "";
                    item.help_string = "";
                    item.limit_level = "";
                    item.more        = new List <string>();
                }
                else if (strLine.Contains("code = ") && strLine.Substring(0, CFormat.StringLength("code =")) == "code =")
                {
                    item.code = CFormat.PureString(strLine.Split('=')[1]);
                }
                else if (strLine.Contains("name = ") && strLine.Substring(0, CFormat.StringLength("name =")) == "name =")
                {
                    item.name = CFormat.PureString(strLine.Split('=')[1]);
                }
                else if (strLine.Contains("cost = ") && strLine.Substring(0, CFormat.StringLength("cost =")) == "cost =")
                {
                    item.cost = CFormat.PureString(strLine.Split('=')[1]);
                }
                else if (strLine.Contains("sell = ") && strLine.Substring(0, CFormat.StringLength("sell =")) == "sell =")
                {
                    item.sell = CFormat.PureString(strLine.Split('=')[1]);
                }
                else if (strLine.Contains("help_string = ") && strLine.Substring(0, CFormat.StringLength("help_string =")) == "help_string =")
                {
                    item.help_string = CFormat.PureString(strLine.Split('=')[1]);
                }
                else if (strLine.Contains("limit_level = ") && strLine.Substring(0, CFormat.StringLength("limit_level =")) == "limit_level =")
                {
                    item.limit_level = CFormat.PureString(strLine.Split('=')[1]);
                }
                else if (strLine.Contains("="))
                {
                    item.more.Add(strLine);
                }

                strLine = null;
                strLine = reader.ReadLine();
            }

            //末了 写一次
            m_ItemList.Add(item);

            reader.Close();
            fs.Close();

            return(true);
        }