1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
//--------------------------------------------------------
//    [Author]:           YYL
//    [  Date ]:           Monday, May 11, 2026
//--------------------------------------------------------
 
using System.Collections.Generic;
using System;
using UnityEngine;
using LitJson;
 
public partial class ActSpecialSaleConfig : ConfigBase<int, ActSpecialSaleConfig>
{
    static ActSpecialSaleConfig()
    {
        // 访问过静态构造函数
        visit = true; 
    }
 
    public int CfgID;
    public int[] CTGIDList;
    public int ActShopType;
    public int ADID;
    public int[][] PopItems;
    public float[] OriginalPrices;
    public float[] PercentageTexts;
 
    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 CfgID); 
 
            if (tables[1].Contains("["))
            {
                CTGIDList = JsonMapper.ToObject<int[]>(tables[1]);
            }
            else
            {
                string[] CTGIDListStringArray = tables[1].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                CTGIDList = new int[CTGIDListStringArray.Length];
                for (int i=0;i<CTGIDListStringArray.Length;i++)
                {
                     int.TryParse(CTGIDListStringArray[i],out CTGIDList[i]);
                }
            }
 
            int.TryParse(tables[2],out ActShopType); 
 
            int.TryParse(tables[3],out ADID); 
 
            PopItems = JsonMapper.ToObject<int[][]>(tables[4].Replace("(", "[").Replace(")", "]")); 
 
            if (tables[5].Contains("["))
            {
                OriginalPrices = JsonMapper.ToObject<float[]>(tables[5]);
            }
            else
            {
                string[] OriginalPricesStringArray = tables[5].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                OriginalPrices = new float[OriginalPricesStringArray.Length];
                for (int i=0;i<OriginalPricesStringArray.Length;i++)
                {
                     float.TryParse(OriginalPricesStringArray[i],out OriginalPrices[i]);
                }
            }
 
            if (tables[6].Contains("["))
            {
                PercentageTexts = JsonMapper.ToObject<float[]>(tables[6]);
            }
            else
            {
                string[] PercentageTextsStringArray = tables[6].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                PercentageTexts = new float[PercentageTextsStringArray.Length];
                for (int i=0;i<PercentageTextsStringArray.Length;i++)
                {
                     float.TryParse(PercentageTextsStringArray[i],out PercentageTexts[i]);
                }
            }
        }
        catch (Exception exception)
        {
            Debug.LogError(exception);
        }
    }
}