Пример #1
0
        public void LoadAllStatus()
        {
            string jsonFile = File.ReadAllText("Data/D_Status.json");

            s_statusDatas      = JsonMapper.ToObject(jsonFile);
            res                = new DO_Status[s_statusDatas.Count];
            specialAttributes  = new DO_SpecialAttributeStatus[s_statusDatas.Count];
            concreteAttributes = new DO_ConcreteAttributeStatus[s_statusDatas.Count];
            for (int i = 0; i < res.Length; i++)
            {
                DO_Status status = new DO_Status();
                DO_SpecialAttributeStatus  s_status = new DO_SpecialAttributeStatus();
                DO_ConcreteAttributeStatus c_status = new DO_ConcreteAttributeStatus();
                status.m_statusId = short.Parse(s_statusDatas[i]["StatusID"].ToString());
                status.m_type     = (StatusType)Enum.Parse(typeof(StatusType), s_statusDatas[i]["Type"].ToString());
                status.m_isBuff   = int.Parse(s_statusDatas[i]["IsBuff"].ToString()) == 1?true:false;
                if (s_statusDatas[i]["SpecialAttributes"].Count != 0)
                {
                    s_status.m_spAttr = (ActorUnitSpecialAttributeType)Enum.Parse(typeof(ActorUnitSpecialAttributeType), s_statusDatas[i]["SpecialAttributes"][0].ToString());
                }
                c_status.m_conAttrArr = new ValueTuple <ActorUnitConcreteAttributeType, int> [s_statusDatas[i]["AttributeAttachArray"].Count];
                for (int m = 0; m < s_statusDatas[i]["AttributeAttachArray"].Count; m++)
                {
                    c_status.m_conAttrArr[m] = new ValueTuple <ActorUnitConcreteAttributeType, int>
                                                   ((ActorUnitConcreteAttributeType)Enum.Parse(typeof(ActorUnitConcreteAttributeType), s_statusDatas[i]["AttributeAttachArray"][m].ToString().Split(' ') [0]),
                                                   int.Parse(s_statusDatas[i]["AttributeAttachArray"][m].ToString().Split(' ') [1]));
                }

                res[i] = status;
                specialAttributes[i]  = s_status;
                concreteAttributes[i] = c_status;
            }
        }
Пример #2
0
 public DE_SpecialAttributeStatus(DO_SpecialAttributeStatus sasDo)
 {
     m_spAttr = sasDo.m_spAttr;
 }