예제 #1
0
    /// <summary>
    /// 获取羁绊信息
    /// </summary>
    /// <param name="configId"></param>
    /// <returns></returns>
    public static List <RelationBallerInfo> GetBallerRelateInfo(string configId)
    {
        List <RelationBallerInfo> rela_list = new List <RelationBallerInfo>();
        BallerRelate info = GetBallerRelate(int.Parse(configId));

        RelationBallerInfo data = null;

        string[] arr = info.relate.Split(';');

        string[] nameArr = info.relationName.Split(',');


        for (int i = 0; i < arr.Length; i++)
        {
            data              = new RelationBallerInfo();
            data.playerId     = int.Parse(configId);
            data.relationName = nameArr[i];

            string[] content  = arr[i].Split(',');
            bool     isActive = true;
            for (int j = 0; j < content.Length; j++)
            {
                int id = int.Parse(content[j]);
                if (!data.ballerList.Contains(id) && id != 0)
                {
                    data.ballerList.Add(id);
                }

                string propStr     = "prop" + (j + 1);
                string propContent = GameConvert.StringConvert(info.GetType().GetField(propStr).GetValue(info));


                data.propName = propContent.Split(':')[0];

                data.propValue = GameConvert.IntConvert(propContent.Split(':')[1]);
            }

            data.isActive = isActive;
            rela_list.Add(data);
        }


        return(rela_list);
    }
예제 #2
0
 private void OnReadRow(BallerRelate row)
 {
     m_data[row.id] = row;
 }