示例#1
0
        public static void Initialize()
        {
            #region Item
            string[] itemInfoList = Properties.ResourceSetting.Items.Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries);

            foreach (var itemInfo in itemInfoList)
            {
                try
                {
                    string[] itemDetail = itemInfo.Split('\t');
                    if (itemDetail.Length < 11)
                    {
                        continue;
                    }
                    ItemInfo item = new ItemInfo();
                    item.Name     = itemDetail[0];
                    item.Code     = itemDetail[1];
                    item.Category = itemDetail[2];
                    item.AP       = itemDetail[3];
                    item.DP       = itemDetail[4];
                    item.Hit      = itemDetail[5];
                    item.EV       = itemDetail[6];
                    item.Range    = itemDetail[7];
                    item.Exist    = itemDetail[8] == "可";
                    item.Price    = itemDetail[9];
                    item.Special  = itemDetail[10];
                    ItemInfoList.Add(item);
                }
                catch (Exception ex)
                {
                    string exe = ex.ToString();
                }
            }

            ItemInfoList.RemoveAt(0);
            #endregion
            #region MagicAndJob
            string[] magicAndJobInfoList = Properties.ResourceSetting.MagicAndJob.Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
            foreach (var magicAndJobInfo in magicAndJobInfoList)
            {
                try
                {
                    string[] itemDetail = magicAndJobInfo.Split('\t');
                    if (itemDetail.Length < 4)
                    {
                        continue;
                    }
                    MagicAndJob item = new MagicAndJob();
                    item.Role  = itemDetail[0];
                    item.Type  = itemDetail[1];
                    item.Job   = itemDetail[2];
                    item.Magic = itemDetail[3].Trim('"');
                    MagicAndJobInfoList.Add(item);
                }
                catch (Exception ex)
                {
                    string exe = ex.ToString();
                }
            }

            MagicAndJobInfoList.RemoveAt(0);
            #endregion
            #region Job
            string[] jobInfoList = Properties.ResourceSetting.Job.Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries);

            foreach (var itemInfo in jobInfoList)
            {
                try
                {
                    string[] itemDetail = itemInfo.Split('\t');
                    if (itemDetail.Length < 2)
                    {
                        continue;
                    }
                    JobInfo item = new JobInfo();
                    item.Code = itemDetail[0];
                    item.Name = itemDetail[1];
                    JobInfoList.Add(item);
                }
                catch (Exception ex)
                {
                    string exe = ex.ToString();
                }
            }

            JobInfoList.RemoveAt(0);
            #endregion
            #region Race
            string[] raceInfoArray = Properties.ResourceSetting.Race.Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries);

            foreach (var itemInfo in raceInfoArray)
            {
                try
                {
                    string[] itemDetail = itemInfo.Split('\t');
                    if (itemDetail.Length < 2)
                    {
                        continue;
                    }
                    RaceInfo item = new RaceInfo();
                    item.Code = itemDetail[0];
                    item.Name = itemDetail[1];
                    RaceInfoList.Add(item);
                }
                catch (Exception ex)
                {
                    string exe = ex.ToString();
                }
            }

            RaceInfoList.RemoveAt(0);
            #endregion
            #region Race
            string[] roleNameInfoArray = Properties.ResourceSetting.Role.Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries);

            foreach (var itemInfo in roleNameInfoArray)
            {
                try
                {
                    string[] itemDetail = itemInfo.Split('\t');
                    if (itemDetail.Length < 3)
                    {
                        continue;
                    }
                    RoleNameInfo item = new RoleNameInfo();
                    item.Code = itemDetail[0];
                    item.Name = itemDetail[1];
                    item.Job  = itemDetail[2];
                    RoleNameInfoList.Add(item);
                }
                catch (Exception ex)
                {
                    string exe = ex.ToString();
                }
            }

            RoleNameInfoList.RemoveAt(0);
            #endregion
            #region StartAddress
            //string settingIni = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Setting.ini");
            //if (!File.Exists(settingIni))
            //{
            //    List<string> sb = new List<string>();
            //    sb.Add("[Setting]");
            //    //0x11700000
            //    sb.Add("StartSerachAddress=0x00000000");
            //    File.AppendAllLines(settingIni, sb);
            //}

            //IniLib.IniFilePath = settingIni;
            //settingIni = IniLib.IniRead("StartSerachAddress", "Setting");
            //GlobalSpecs.BaseStartAddress = ComLib.GetDec(settingIni);
            #endregion
        }
示例#2
0
        public static RoleNameInfo GetRoleName(MemoryData race)
        {
            RoleNameInfo roleNameInfo = SettingsLib.RoleNameInfoList.FirstOrDefault(item => item.Code.ToLower().PadLeft(2, '0') == race.HexVal);

            return(roleNameInfo);
        }
示例#3
0
        private void SetFormValue()
        {
            #region title Info
            txtX.Text    = _RoleInfo.M01_X.Value;
            txtY.Text    = _RoleInfo.M02_Y.Value;
            labJob.Text  = RoleLib.GetJob(_RoleInfo.M33_职业).Name;
            labRace.Text = RoleLib.GetRace(_RoleInfo.M32_人种).Name;
            RoleNameInfo roleName = RoleLib.GetRoleName(_RoleInfo.M08_人物肖像职业);
            labName.Text    = roleName == null? _RoleInfo.M08_人物肖像职业.HexVal: roleName.Name;
            labRoleJob.Text = roleName == null ? _RoleInfo.M08_人物肖像职业.Value : roleName.Job;
            switch (RoleLib.GetCamp(_RoleInfo.M07_人物阵营))
            {
            case RoleCamp.Enemy:
                labCamp.Text = "(敌人)";
                break;

            case RoleCamp.NPC:
                labCamp.Text = "(NPC)";
                break;

            case RoleCamp.Ally:
                labCamp.Text = "(己方)";
                break;

            default:
                break;
            }

            //txtM03.Text = _RoleInfo.M03_人物图形.Value;
            //txtM04.Text = _RoleInfo.M04_人物方向.Value;
            //txtM07.Text = _RoleInfo.M07_人物阵营.Value;
            //txtM08.Text = _RoleInfo.M08_人物肖像职业.Value;
            //txtM09.Text = _RoleInfo.M09_人物名字.Value;
            #endregion

            #region basic info
            SetOneTxtItem(txtNowHP, _RoleInfo.M47_HP);
            SetOneTxtItem(txtMaxHP, _RoleInfo.M48_MaxHP);
            SetOneTxtItem(txtNowMP, _RoleInfo.M49_MP);
            SetOneTxtItem(txtMaxMP, _RoleInfo.M50_MaxMp);
            SetOneTxtItem(txtLV, _RoleInfo.M34_等级);
            SetOneTxtItem(txtMV, _RoleInfo.M44_移动);
            SetOneTxtItem(txtEx, _RoleInfo.M45_经验);
            SetOneTxtItem(txtBaseAP, _RoleInfo.M42_基本AP);
            SetOneTxtItem(txtBaseDP, _RoleInfo.M43_基本DP);
            SetOneTxtItem(txtDx, _RoleInfo.M46_DX);
            SetOneTxtItem(txtEv, _RoleInfo.M54_EV);
            SetOneTxtItem(txtAP, _RoleInfo.M51_AP);
            SetOneTxtItem(txtHit, _RoleInfo.M53_HIT);
            SetOneTxtItem(txtDP, _RoleInfo.M52_DP);

            txtPoison.Text    = _RoleInfo.M38_中毒.IntVal == 0 ? "" : _RoleInfo.M38_中毒.Value;
            txtParalysis.Text = _RoleInfo.M39_麻痹.IntVal == 0 ? "" : _RoleInfo.M39_麻痹.Value;
            txtCurse.Text     = _RoleInfo.M40_禁咒.IntVal == 0 ? "" : _RoleInfo.M40_禁咒.Value;
            chkAction.Checked = ComLib.GetAction(int.Parse(_RoleInfo.M06_是否可动.Value));
            #endregion

            #region Items
            SetItem(chkItem1, txtItem1, _RoleInfo.M11_物品1状态, _RoleInfo.M12_物品1);
            SetItem(chkItem2, txtItem2, _RoleInfo.M13_物品2状态, _RoleInfo.M14_物品2);
            SetItem(chkItem3, txtItem3, _RoleInfo.M15_物品3状态, _RoleInfo.M16_物品3);
            SetItem(chkItem4, txtItem4, _RoleInfo.M17_物品4状态, _RoleInfo.M18_物品4);
            SetItem(chkItem5, txtItem5, _RoleInfo.M19_物品5状态, _RoleInfo.M20_物品5);
            SetItem(chkItem6, txtItem6, _RoleInfo.M21_物品6状态, _RoleInfo.M22_物品6);
            SetItem(chkItem7, txtItem7, _RoleInfo.M23_物品7状态, _RoleInfo.M24_物品7);
            SetItem(chkItem8, txtItem8, _RoleInfo.M25_物品8状态, _RoleInfo.M26_物品8);
            #endregion

            #region Magic
            List <string> tMagicList;
            int[]         pMagicCode = { _RoleInfo.M27_法术1.IntVal,
                                         _RoleInfo.M28_法术2.IntVal,
                                         _RoleInfo.M29_法术3.IntVal,
                                         _RoleInfo.M30_法术4.IntVal,
                                         _RoleInfo.M31_法术5.IntVal };
            tMagicList = MagicLib.GetMagicName(pMagicCode);
            listBoxMagic.DataSource = tMagicList.Select(item => new { Name = item }).ToList();
            #endregion
        }