//-------------------------------------------------------- 
 | 
//    [Author]:           YYL 
 | 
//    [  Date ]:           2025年5月22日 
 | 
//-------------------------------------------------------- 
 | 
  
 | 
using System.Collections.Generic; 
 | 
using System.IO; 
 | 
using System.Threading; 
 | 
using System; 
 | 
using UnityEngine; 
 | 
using LitJson; 
 | 
  
 | 
public partial class PlayerFaceConfig : ConfigBase<int, PlayerFaceConfig> 
 | 
{ 
 | 
  
 | 
    public int FaceID; 
 | 
    public string Name; 
 | 
    public int[] JobShowList; 
 | 
    public int UnlockDefault; 
 | 
    public int ExpireMinutes; 
 | 
    public int CustomPlayerID; 
 | 
    public string Image; 
 | 
    public int BgColor; 
 | 
    public int EffectID; 
 | 
    public int[][] UnlockNeedItemList; 
 | 
    public int[] LightAttrType; 
 | 
    public int[] LightAttrValue; 
 | 
    public int LightFightPower; 
 | 
    public string Descriptive; 
 | 
  
 | 
    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 FaceID);  
 | 
  
 | 
            Name = tables[1]; 
 | 
  
 | 
            if (tables[2].Contains("[")) 
 | 
            { 
 | 
                JobShowList = JsonMapper.ToObject<int[]>(tables[2]); 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                string[] JobShowListStringArray = tables[2].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries); 
 | 
                JobShowList = new int[JobShowListStringArray.Length]; 
 | 
                for (int i=0;i<JobShowListStringArray.Length;i++) 
 | 
                { 
 | 
                     int.TryParse(JobShowListStringArray[i],out JobShowList[i]); 
 | 
                } 
 | 
            } 
 | 
  
 | 
            int.TryParse(tables[3],out UnlockDefault);  
 | 
  
 | 
            int.TryParse(tables[4],out ExpireMinutes);  
 | 
  
 | 
            int.TryParse(tables[5],out CustomPlayerID);  
 | 
  
 | 
            Image = tables[6]; 
 | 
  
 | 
            int.TryParse(tables[7],out BgColor);  
 | 
  
 | 
            int.TryParse(tables[8],out EffectID);  
 | 
  
 | 
            UnlockNeedItemList = JsonMapper.ToObject<int[][]>(tables[9].Replace("(", "[").Replace(")", "]"));  
 | 
  
 | 
            if (tables[10].Contains("[")) 
 | 
            { 
 | 
                LightAttrType = JsonMapper.ToObject<int[]>(tables[10]); 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                string[] LightAttrTypeStringArray = tables[10].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries); 
 | 
                LightAttrType = new int[LightAttrTypeStringArray.Length]; 
 | 
                for (int i=0;i<LightAttrTypeStringArray.Length;i++) 
 | 
                { 
 | 
                     int.TryParse(LightAttrTypeStringArray[i],out LightAttrType[i]); 
 | 
                } 
 | 
            } 
 | 
  
 | 
            if (tables[11].Contains("[")) 
 | 
            { 
 | 
                LightAttrValue = JsonMapper.ToObject<int[]>(tables[11]); 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                string[] LightAttrValueStringArray = tables[11].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries); 
 | 
                LightAttrValue = new int[LightAttrValueStringArray.Length]; 
 | 
                for (int i=0;i<LightAttrValueStringArray.Length;i++) 
 | 
                { 
 | 
                     int.TryParse(LightAttrValueStringArray[i],out LightAttrValue[i]); 
 | 
                } 
 | 
            } 
 | 
  
 | 
            int.TryParse(tables[12],out LightFightPower);  
 | 
  
 | 
            Descriptive = tables[13]; 
 | 
        } 
 | 
        catch (Exception exception) 
 | 
        { 
 | 
            Debug.LogError(exception); 
 | 
        } 
 | 
    } 
 | 
} 
 |