예제 #1
0
 private static void LoadTalentInfoData()
 {
     TalentManager._TalentInfoList.Clear();
     for (int i = 0; i < 6; i++)
     {
         Dictionary <int, TalentInfo> list = new Dictionary <int, TalentInfo>();
         string   fileName = Global.GameResPath(string.Format("Config/TianFuProperty_{0}.xml", i));
         XElement xml      = CheckHelper.LoadXml(fileName, false);
         if (null == xml)
         {
             TalentManager._TalentInfoList.Add(i, list);
         }
         else
         {
             try
             {
                 IEnumerable <XElement> xmlItems = xml.Elements();
                 foreach (XElement xmlItem in xmlItems)
                 {
                     if (xmlItem != null)
                     {
                         TalentInfo config = new TalentInfo();
                         config.ID              = Convert.ToInt32(Global.GetDefAttributeStr(xmlItem, "ID", "0"));
                         config.Type            = Convert.ToInt32(Global.GetDefAttributeStr(xmlItem, "TianFuType", "0"));
                         config.Name            = Global.GetDefAttributeStr(xmlItem, "Name", "");
                         config.NeedTalentCount = Convert.ToInt32(Global.GetDefAttributeStr(xmlItem, "NeedInputPoint", "0"));
                         config.NeedTalentID    = Convert.ToInt32(Global.GetDefAttributeStr(xmlItem, "NeedTianFu", "0"));
                         config.NeedTalentLevel = Convert.ToInt32(Global.GetDefAttributeStr(xmlItem, "NeedTianFuLevel", "0"));
                         config.LevelMax        = Convert.ToInt32(Global.GetDefAttributeStr(xmlItem, "LevelMax", "0"));
                         config.EffectType      = Convert.ToInt32(Global.GetDefAttributeStr(xmlItem, "EffectType", "0"));
                         config.EffectList      = new Dictionary <int, List <TalentEffectInfo> >();
                         string effect = Global.GetDefAttributeStr(xmlItem, "Effect1", "");
                         TalentManager.XmlGetTalentEffect(config, 1, effect);
                         effect = Global.GetDefAttributeStr(xmlItem, "Effect2", "");
                         TalentManager.XmlGetTalentEffect(config, 2, effect);
                         effect = Global.GetDefAttributeStr(xmlItem, "Effect3", "");
                         TalentManager.XmlGetTalentEffect(config, 3, effect);
                         effect = Global.GetDefAttributeStr(xmlItem, "Effect4", "");
                         TalentManager.XmlGetTalentEffect(config, 4, effect);
                         effect = Global.GetDefAttributeStr(xmlItem, "Effect5", "");
                         TalentManager.XmlGetTalentEffect(config, 5, effect);
                         list.Add(config.ID, config);
                     }
                 }
             }
             catch (Exception ex)
             {
                 LogManager.WriteLog(LogTypes.Fatal, string.Format("加载[{0}]时出错!!!{1}", fileName, ex.Message), null, true);
             }
             TalentManager._TalentInfoList.Add(i, list);
         }
     }
 }