yyl
12 小时以前 30ba2ef747ced774bef177d5273cb5a3429cff49
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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
//--------------------------------------------------------
//    [Author]:           YYL
//    [  Date ]:           Friday, June 27, 2025
//--------------------------------------------------------
 
using System.Collections.Generic;
using System.IO;
using System.Threading;
using System;
using UnityEngine;
using LitJson;
 
public partial class ItemConfig : ConfigBase<int, ItemConfig>
{
 
    public int ID;
    public int LV;
    public string ItemName;
    public int Type;
    public int EquipPlace;
    public int CanRepair;
    public int PackCount;
    public int UseLV;
    public int CanSell;
    public int CanTrade;
    public int[] JumpComposeCondi;
    public int CanDrop;
    public int CanBind;
    public int CDTypeEx;
    public int CDType;
    public int CDTime;
    public int GoldPrice;
    public int GoldPaperPrice;
    public int SilverPrice;
    public int UseTag;
    public int Effect1;
    public int EffectValueA1;
    public int EffectValueB1;
    public int EffectValueC1;
    public int Effect2;
    public int EffectValueA2;
    public int EffectValueB2;
    public int EffectValueC2;
    public int Effect3;
    public int EffectValueA3;
    public int EffectValueB3;
    public int EffectValueC3;
    public int Effect4;
    public int EffectValueA4;
    public int EffectValueB4;
    public int EffectValueC4;
    public int Effect5;
    public int EffectValueA5;
    public int EffectValueB5;
    public int EffectValueC5;
    public int AddSkill1;
    public int AddSkill2;
    public int JobLimit;
    public int RealmLimit;
    public int ItemColor;
    public int StarLevel;
    public int MaxHoleCount;
    public int CanBreak;
    public int MaxEndure;
    public int EndureReduceType;
    public int BindType;
    public int MaxSkillCnt;
    public int ExpireTime;
    public int MaxFitLV;
    public int SuiteiD;
    public string DropinstantEffName;
    public string IconKey;
    public int ChangeOrd;
    public string Description;
    public string QualityName;
    public int QualityEchoType;
    public int LimitSTR;
    public int LimitPHY;
    public int LimitPNE;
    public string Template;
    public int DropItemPattern;
    public int SellTip;
    public int BatchUse;
    public int Jump;
    public int[] GetWay;
    public string ItemTypeName;
    public int[] UseCondiType;
    public int BaseEffectID;
 
    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 LV); 
 
            ItemName = tables[2];
 
            int.TryParse(tables[3],out Type); 
 
            int.TryParse(tables[4],out EquipPlace); 
 
            int.TryParse(tables[5],out CanRepair); 
 
            int.TryParse(tables[6],out PackCount); 
 
            int.TryParse(tables[7],out UseLV); 
 
            int.TryParse(tables[8],out CanSell); 
 
            int.TryParse(tables[9],out CanTrade); 
 
            if (tables[10].Contains("["))
            {
                JumpComposeCondi = JsonMapper.ToObject<int[]>(tables[10]);
            }
            else
            {
                string[] JumpComposeCondiStringArray = tables[10].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                JumpComposeCondi = new int[JumpComposeCondiStringArray.Length];
                for (int i=0;i<JumpComposeCondiStringArray.Length;i++)
                {
                     int.TryParse(JumpComposeCondiStringArray[i],out JumpComposeCondi[i]);
                }
            }
 
            int.TryParse(tables[11],out CanDrop); 
 
            int.TryParse(tables[12],out CanBind); 
 
            int.TryParse(tables[13],out CDTypeEx); 
 
            int.TryParse(tables[14],out CDType); 
 
            int.TryParse(tables[15],out CDTime); 
 
            int.TryParse(tables[16],out GoldPrice); 
 
            int.TryParse(tables[17],out GoldPaperPrice); 
 
            int.TryParse(tables[18],out SilverPrice); 
 
            int.TryParse(tables[19],out UseTag); 
 
            int.TryParse(tables[20],out Effect1); 
 
            int.TryParse(tables[21],out EffectValueA1); 
 
            int.TryParse(tables[22],out EffectValueB1); 
 
            int.TryParse(tables[23],out EffectValueC1); 
 
            int.TryParse(tables[24],out Effect2); 
 
            int.TryParse(tables[25],out EffectValueA2); 
 
            int.TryParse(tables[26],out EffectValueB2); 
 
            int.TryParse(tables[27],out EffectValueC2); 
 
            int.TryParse(tables[28],out Effect3); 
 
            int.TryParse(tables[29],out EffectValueA3); 
 
            int.TryParse(tables[30],out EffectValueB3); 
 
            int.TryParse(tables[31],out EffectValueC3); 
 
            int.TryParse(tables[32],out Effect4); 
 
            int.TryParse(tables[33],out EffectValueA4); 
 
            int.TryParse(tables[34],out EffectValueB4); 
 
            int.TryParse(tables[35],out EffectValueC4); 
 
            int.TryParse(tables[36],out Effect5); 
 
            int.TryParse(tables[37],out EffectValueA5); 
 
            int.TryParse(tables[38],out EffectValueB5); 
 
            int.TryParse(tables[39],out EffectValueC5); 
 
            int.TryParse(tables[40],out AddSkill1); 
 
            int.TryParse(tables[41],out AddSkill2); 
 
            int.TryParse(tables[42],out JobLimit); 
 
            int.TryParse(tables[43],out RealmLimit); 
 
            int.TryParse(tables[44],out ItemColor); 
 
            int.TryParse(tables[45],out StarLevel); 
 
            int.TryParse(tables[46],out MaxHoleCount); 
 
            int.TryParse(tables[47],out CanBreak); 
 
            int.TryParse(tables[48],out MaxEndure); 
 
            int.TryParse(tables[49],out EndureReduceType); 
 
            int.TryParse(tables[50],out BindType); 
 
            int.TryParse(tables[51],out MaxSkillCnt); 
 
            int.TryParse(tables[52],out ExpireTime); 
 
            int.TryParse(tables[53],out MaxFitLV); 
 
            int.TryParse(tables[54],out SuiteiD); 
 
            DropinstantEffName = tables[55];
 
            IconKey = tables[56];
 
            int.TryParse(tables[57],out ChangeOrd); 
 
            Description = tables[58];
 
            QualityName = tables[59];
 
            int.TryParse(tables[60],out QualityEchoType); 
 
            int.TryParse(tables[61],out LimitSTR); 
 
            int.TryParse(tables[62],out LimitPHY); 
 
            int.TryParse(tables[63],out LimitPNE); 
 
            Template = tables[64];
 
            int.TryParse(tables[65],out DropItemPattern); 
 
            int.TryParse(tables[66],out SellTip); 
 
            int.TryParse(tables[67],out BatchUse); 
 
            int.TryParse(tables[68],out Jump); 
 
            if (tables[69].Contains("["))
            {
                GetWay = JsonMapper.ToObject<int[]>(tables[69]);
            }
            else
            {
                string[] GetWayStringArray = tables[69].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                GetWay = new int[GetWayStringArray.Length];
                for (int i=0;i<GetWayStringArray.Length;i++)
                {
                     int.TryParse(GetWayStringArray[i],out GetWay[i]);
                }
            }
 
            ItemTypeName = tables[70];
 
            if (tables[71].Contains("["))
            {
                UseCondiType = JsonMapper.ToObject<int[]>(tables[71]);
            }
            else
            {
                string[] UseCondiTypeStringArray = tables[71].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                UseCondiType = new int[UseCondiTypeStringArray.Length];
                for (int i=0;i<UseCondiTypeStringArray.Length;i++)
                {
                     int.TryParse(UseCondiTypeStringArray[i],out UseCondiType[i]);
                }
            }
 
            int.TryParse(tables[72],out BaseEffectID); 
        }
        catch (Exception exception)
        {
            Debug.LogError(exception);
        }
    }
}