hch
8 分钟以前 bec2128f4b8b0f13cffca6c3036c4c400afb8220
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
//--------------------------------------------------------
//    [Author]:           YYL
//    [  Date ]:           2026年2月7日
//--------------------------------------------------------
 
using System.Collections.Generic;
using System;
using UnityEngine;
using LitJson;
 
public partial class SkillSkinConfig : ConfigBase<string, SkillSkinConfig>
{
    static SkillSkinConfig()
    {
        // 访问过静态构造函数
        visit = true; 
    }
 
    public string SkillSkinID;
    public string SkillMotionName;
    public int EffectType;
    public int CastPosition;
    public int CastIndexNum;
    public float CastDistance;
    public int StartupFrames;
    public int[] ActiveFrames;
    public int RecoveryFrames;
    public int LoopCount;
    public int[][] DamageDivide;
    public int BulletEffectId;
    public int BulletPath;
    public float BulletFlySpeed;
    public int ExplosionEffectId;
    public int ExplosionEffect2;
    public int ExplosionEffect3;
    public int ExplosionEffect4;
    public int EffectId;
    public int EffectId2;
    public int SkinllSFX1;
    public int SkinllSFX2;
    public int MStartEffectId;
    public int BuffEffect;
    public int TriggerEffect;
 
    public override string LoadKey(string _key)
    {
        string key = GetKey(_key);
        return key;
    }
 
    public override void LoadConfig(string input)
    {
        try {
        string[] tables = input.Split('\t');
        SkillSkinID = tables[0];
 
            SkillMotionName = tables[1];
 
            int.TryParse(tables[2],out EffectType); 
 
            int.TryParse(tables[3],out CastPosition); 
 
            int.TryParse(tables[4],out CastIndexNum); 
 
            float.TryParse(tables[5],out CastDistance); 
 
            int.TryParse(tables[6],out StartupFrames); 
 
            if (tables[7].Contains("["))
            {
                ActiveFrames = JsonMapper.ToObject<int[]>(tables[7]);
            }
            else
            {
                string[] ActiveFramesStringArray = tables[7].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                ActiveFrames = new int[ActiveFramesStringArray.Length];
                for (int i=0;i<ActiveFramesStringArray.Length;i++)
                {
                     int.TryParse(ActiveFramesStringArray[i],out ActiveFrames[i]);
                }
            }
 
            int.TryParse(tables[8],out RecoveryFrames); 
 
            int.TryParse(tables[9],out LoopCount); 
 
            DamageDivide = JsonMapper.ToObject<int[][]>(tables[10].Replace("(", "[").Replace(")", "]")); 
 
            int.TryParse(tables[11],out BulletEffectId); 
 
            int.TryParse(tables[12],out BulletPath); 
 
            float.TryParse(tables[13],out BulletFlySpeed); 
 
            int.TryParse(tables[14],out ExplosionEffectId); 
 
            int.TryParse(tables[15],out ExplosionEffect2); 
 
            int.TryParse(tables[16],out ExplosionEffect3); 
 
            int.TryParse(tables[17],out ExplosionEffect4); 
 
            int.TryParse(tables[18],out EffectId); 
 
            int.TryParse(tables[19],out EffectId2); 
 
            int.TryParse(tables[20],out SkinllSFX1); 
 
            int.TryParse(tables[21],out SkinllSFX2); 
 
            int.TryParse(tables[22],out MStartEffectId); 
 
            int.TryParse(tables[23],out BuffEffect); 
 
            int.TryParse(tables[24],out TriggerEffect); 
        }
        catch (Exception exception)
        {
            Debug.LogError(exception);
        }
    }
}