//--------------------------------------------------------  
 | 
//    [Author]:           YYL  
 | 
//    [  Date ]:           Wednesday, September 17, 2025  
 | 
//--------------------------------------------------------  
 | 
  
 | 
using System.Collections.Generic;  
 | 
using System;  
 | 
using UnityEngine;  
 | 
using LitJson;  
 | 
  
 | 
public partial class HeroConfig : ConfigBase<int, HeroConfig>  
 | 
{  
 | 
    static HeroConfig()  
 | 
    {  
 | 
        // 访问过静态构造函数  
 | 
        visit = true;   
 | 
    }  
 | 
  
 | 
    public int HeroID;  
 | 
    public string Name;  
 | 
    public int PlayerCanUse;  
 | 
    public int Country;  
 | 
    public int Quality;  
 | 
    public int Class;  
 | 
    public int Position;  
 | 
    public int[] SkinIDList;  
 | 
    public int AtkSkillID;  
 | 
    public int AngerSkillID;  
 | 
    public int AtkInheritPer;  
 | 
    public int DefInheritPer;  
 | 
    public int HPInheritPer;  
 | 
    public Dictionary<int, int> BatAttrDict;  
 | 
    public int[] FetterIDList;  
 | 
    public float UIScale;  
 | 
    public string Desc;  
 | 
    public int[] TalentList;  
 | 
  
 | 
    public override int LoadKey(string _key)  
 | 
    {  
 | 
        int key = GetKey(_key);  
 | 
        return key;  
 | 
    }  
 | 
  
 | 
    public override void LoadConfig(string input)  
 | 
    {  
 | 
        try {  
 | 
        string[] tables = input.Split('\t');  
 | 
        int.TryParse(tables[0],out HeroID);   
 | 
  
 | 
            Name = tables[1];  
 | 
  
 | 
            int.TryParse(tables[2],out PlayerCanUse);   
 | 
  
 | 
            int.TryParse(tables[3],out Country);   
 | 
  
 | 
            int.TryParse(tables[4],out Quality);   
 | 
  
 | 
            int.TryParse(tables[5],out Class);   
 | 
  
 | 
            int.TryParse(tables[6],out Position);   
 | 
  
 | 
            if (tables[7].Contains("[")) 
 | 
            { 
 | 
                SkinIDList = JsonMapper.ToObject<int[]>(tables[7]); 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                string[] SkinIDListStringArray = tables[7].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries); 
 | 
                SkinIDList = new int[SkinIDListStringArray.Length]; 
 | 
                for (int i=0;i<SkinIDListStringArray.Length;i++) 
 | 
                { 
 | 
                     int.TryParse(SkinIDListStringArray[i],out SkinIDList[i]); 
 | 
                } 
 | 
            }  
 | 
  
 | 
            int.TryParse(tables[8],out AtkSkillID);   
 | 
  
 | 
            int.TryParse(tables[9],out AngerSkillID);   
 | 
  
 | 
            int.TryParse(tables[10],out AtkInheritPer);   
 | 
  
 | 
            int.TryParse(tables[11],out DefInheritPer);   
 | 
  
 | 
            int.TryParse(tables[12],out HPInheritPer);   
 | 
  
 | 
            BatAttrDict = ConfigParse.ParseIntDict(tables[13]);   
 | 
  
 | 
            if (tables[14].Contains("[")) 
 | 
            { 
 | 
                FetterIDList = JsonMapper.ToObject<int[]>(tables[14]); 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                string[] FetterIDListStringArray = tables[14].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries); 
 | 
                FetterIDList = new int[FetterIDListStringArray.Length]; 
 | 
                for (int i=0;i<FetterIDListStringArray.Length;i++) 
 | 
                { 
 | 
                     int.TryParse(FetterIDListStringArray[i],out FetterIDList[i]); 
 | 
                } 
 | 
            }  
 | 
  
 | 
            float.TryParse(tables[15],out UIScale);   
 | 
  
 | 
            Desc = tables[16];  
 | 
  
 | 
            if (tables[17].Contains("[")) 
 | 
            { 
 | 
                TalentList = JsonMapper.ToObject<int[]>(tables[17]); 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                string[] TalentListStringArray = tables[17].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries); 
 | 
                TalentList = new int[TalentListStringArray.Length]; 
 | 
                for (int i=0;i<TalentListStringArray.Length;i++) 
 | 
                { 
 | 
                     int.TryParse(TalentListStringArray[i],out TalentList[i]); 
 | 
                } 
 | 
            }  
 | 
        }  
 | 
        catch (Exception exception)  
 | 
        {  
 | 
            Debug.LogError(exception);  
 | 
        }  
 | 
    }  
 | 
}  
 |