//-------------------------------------------------------- 
 | 
//    [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 GuideConfig : ConfigBase<int, GuideConfig> 
 | 
{ 
 | 
  
 | 
    public int ID; 
 | 
    public int Type; 
 | 
    public int TriggerType; 
 | 
    public int Condition; 
 | 
    public int SupplementCondition; 
 | 
    public int PreGuideId; 
 | 
    public int[] Steps; 
 | 
    public int CanSkip; 
 | 
    public int RemoveWhenOtherGuide; 
 | 
    public int CannotCompleteByClick; 
 | 
    public int[] UnfoldAreas; 
 | 
    public int AutoCompleteTime; 
 | 
  
 | 
    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 ID);  
 | 
  
 | 
            int.TryParse(tables[1],out Type);  
 | 
  
 | 
            int.TryParse(tables[2],out TriggerType);  
 | 
  
 | 
            int.TryParse(tables[3],out Condition);  
 | 
  
 | 
            int.TryParse(tables[4],out SupplementCondition);  
 | 
  
 | 
            int.TryParse(tables[5],out PreGuideId);  
 | 
  
 | 
            if (tables[6].Contains("[")) 
 | 
            { 
 | 
                Steps = JsonMapper.ToObject<int[]>(tables[6]); 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                string[] StepsStringArray = tables[6].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries); 
 | 
                Steps = new int[StepsStringArray.Length]; 
 | 
                for (int i=0;i<StepsStringArray.Length;i++) 
 | 
                { 
 | 
                     int.TryParse(StepsStringArray[i],out Steps[i]); 
 | 
                } 
 | 
            } 
 | 
  
 | 
            int.TryParse(tables[7],out CanSkip);  
 | 
  
 | 
            int.TryParse(tables[8],out RemoveWhenOtherGuide);  
 | 
  
 | 
            int.TryParse(tables[9],out CannotCompleteByClick);  
 | 
  
 | 
            if (tables[10].Contains("[")) 
 | 
            { 
 | 
                UnfoldAreas = JsonMapper.ToObject<int[]>(tables[10]); 
 | 
            } 
 | 
            else 
 | 
            { 
 | 
                string[] UnfoldAreasStringArray = tables[10].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries); 
 | 
                UnfoldAreas = new int[UnfoldAreasStringArray.Length]; 
 | 
                for (int i=0;i<UnfoldAreasStringArray.Length;i++) 
 | 
                { 
 | 
                     int.TryParse(UnfoldAreasStringArray[i],out UnfoldAreas[i]); 
 | 
                } 
 | 
            } 
 | 
  
 | 
            int.TryParse(tables[11],out AutoCompleteTime);  
 | 
        } 
 | 
        catch (Exception exception) 
 | 
        { 
 | 
            Debug.LogError(exception); 
 | 
        } 
 | 
    } 
 | 
} 
 |