lcy
2025-11-05 3b2a6bb9047cfce9f501593b3669a9c1af6c5df4
Main/Config/Configs/SkillConfig.cs
@@ -1,174 +1,139 @@
//--------------------------------------------------------
//    [Author]:           YYL
//    [  Date ]:           Wednesday, August 20, 2025
//--------------------------------------------------------
using System.Collections.Generic;
using System;
using UnityEngine;
using LitJson;
public partial class SkillConfig : ConfigBase<int, SkillConfig>
{
    static SkillConfig()
    {
        // 访问过静态构造函数
        visit = true;
    }
    public int SkillID;
   public int SkillTypeID;
   public int SkillMaxLV;
   public string SkillName;
   public string Description;
   public int FuncType;
   public int SkillType;
   public int HurtType;
   public int AtkType;
   public int TagAim;
   public int TagFriendly;
   public int TagAffect;
   public int TagCount;
   public int HappenRate;
   public int EffectID1;
   public int[] EffectValues1;
   public int EffectID2;
   public int[] EffectValues2;
   public int EffectID3;
   public int[] EffectValues3;
   public int ConnSkill;
   public int CoolDownTime;
   public int[] EnhanceSkillList;
   public int FightPower;
   public int StartupFrames;
   public int[] ActiveFrames;
   public int RecoveryFrames;
   public int LoopCount;
   public int CastPosition;
   public int CastIndexNum;
   public float CastDistance;
   public int[][] DamageDivide;
   public int BulletEffectId;
   public int BulletPos;
   public int BulletPath;
   public int BulletFlyTime;
   public int ExplosionEffectId;
   public int ExplosionPos;
   public string SkillMotionName;
   public int EffectId;
   public int EffectPos;
   public int EffectType;
   public string IconName;
   public int ExplosionEffect2;
    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 SkillID);
         int.TryParse(tables[1],out SkillTypeID);
         int.TryParse(tables[2],out SkillMaxLV);
         SkillName = tables[3];
         Description = tables[4];
         int.TryParse(tables[5],out FuncType);
         int.TryParse(tables[6],out SkillType);
         int.TryParse(tables[7],out HurtType);
         int.TryParse(tables[8],out AtkType);
         int.TryParse(tables[9],out TagAim);
         int.TryParse(tables[10],out TagFriendly);
         int.TryParse(tables[11],out TagAffect);
         int.TryParse(tables[12],out TagCount);
         int.TryParse(tables[13],out HappenRate);
         int.TryParse(tables[14],out EffectID1);
         if (tables[15].Contains("["))
//--------------------------------------------------------
//    [Author]:           YYL
//    [  Date ]:           Monday, October 27, 2025
//--------------------------------------------------------
using System.Collections.Generic;
using System;
using UnityEngine;
using LitJson;
public partial class SkillConfig : ConfigBase<int, SkillConfig>
{
    static SkillConfig()
    {
        // 访问过静态构造函数
        visit = true;
    }
    public int SkillID;
   public int SkillTypeID;
   public int SkillLV;
   public int SkillMaxLV;
   public string SkillName;
   public string Description;
   public int FuncType;
   public int SkillType;
   public int HurtType;
   public int AtkType;
   public int TagAim;
   public int TagFriendly;
   public int TagAffect;
   public int TagCount;
   public int HappenRate;
   public int CoolDownTime;
   public int[] BuffStateLimit;
   public int BuffState;
   public int FightPower;
   public string SkillMotionName;
   public string IconName;
   public string BuffIconName;
   public string SkillTipsName;
   public int EffectType;
   public int StartupFrames;
   public int[] ActiveFrames;
   public int RecoveryFrames;
   public int LoopCount;
   public int CastPosition;
   public int CastIndexNum;
   public float CastDistance;
   public int[][] DamageDivide;
   public int BulletEffectId;
   public int BulletPath;
   public float BulletFlySpeed;
   public int Scattering;
   public int ExplosionEffectId;
   public int ExplosionEffect2;
   public int ExplosionEffect3;
   public int ExplosionEffect4;
   public int EffectId;
   public int EffectId2;
   public int MStartEffectId;
   public int BuffEffect;
   public int TriggerEffect;
    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 SkillID);
         int.TryParse(tables[1],out SkillTypeID);
         int.TryParse(tables[2],out SkillLV);
         int.TryParse(tables[3],out SkillMaxLV);
         SkillName = tables[4];
         Description = tables[5];
         int.TryParse(tables[6],out FuncType);
         int.TryParse(tables[7],out SkillType);
         int.TryParse(tables[8],out HurtType);
         int.TryParse(tables[9],out AtkType);
         int.TryParse(tables[10],out TagAim);
         int.TryParse(tables[11],out TagFriendly);
         int.TryParse(tables[12],out TagAffect);
         int.TryParse(tables[13],out TagCount);
         int.TryParse(tables[14],out HappenRate);
         int.TryParse(tables[15],out CoolDownTime);
         if (tables[16].Contains("["))
         {
            EffectValues1 = JsonMapper.ToObject<int[]>(tables[15]);
            BuffStateLimit = JsonMapper.ToObject<int[]>(tables[16]);
         }
         else
         {
            string[] EffectValues1StringArray = tables[15].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
            EffectValues1 = new int[EffectValues1StringArray.Length];
            for (int i=0;i<EffectValues1StringArray.Length;i++)
            string[] BuffStateLimitStringArray = tables[16].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
            BuffStateLimit = new int[BuffStateLimitStringArray.Length];
            for (int i=0;i<BuffStateLimitStringArray.Length;i++)
            {
                int.TryParse(EffectValues1StringArray[i],out EffectValues1[i]);
                int.TryParse(BuffStateLimitStringArray[i],out BuffStateLimit[i]);
            }
         }
         int.TryParse(tables[16],out EffectID2);
         if (tables[17].Contains("["))
         {
            EffectValues2 = JsonMapper.ToObject<int[]>(tables[17]);
         }
         else
         {
            string[] EffectValues2StringArray = tables[17].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
            EffectValues2 = new int[EffectValues2StringArray.Length];
            for (int i=0;i<EffectValues2StringArray.Length;i++)
            {
                int.TryParse(EffectValues2StringArray[i],out EffectValues2[i]);
            }
         }
         int.TryParse(tables[18],out EffectID3);
         if (tables[19].Contains("["))
         {
            EffectValues3 = JsonMapper.ToObject<int[]>(tables[19]);
         }
         else
         {
            string[] EffectValues3StringArray = tables[19].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
            EffectValues3 = new int[EffectValues3StringArray.Length];
            for (int i=0;i<EffectValues3StringArray.Length;i++)
            {
                int.TryParse(EffectValues3StringArray[i],out EffectValues3[i]);
            }
         }
         int.TryParse(tables[20],out ConnSkill);
         int.TryParse(tables[21],out CoolDownTime);
         if (tables[22].Contains("["))
         {
            EnhanceSkillList = JsonMapper.ToObject<int[]>(tables[22]);
         }
         else
         {
            string[] EnhanceSkillListStringArray = tables[22].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
            EnhanceSkillList = new int[EnhanceSkillListStringArray.Length];
            for (int i=0;i<EnhanceSkillListStringArray.Length;i++)
            {
                int.TryParse(EnhanceSkillListStringArray[i],out EnhanceSkillList[i]);
            }
         }
         int.TryParse(tables[23],out FightPower);
         int.TryParse(tables[24],out StartupFrames);
         }
         int.TryParse(tables[17],out BuffState);
         int.TryParse(tables[18],out FightPower);
         SkillMotionName = tables[19];
         IconName = tables[20];
         BuffIconName = tables[21];
         SkillTipsName = tables[22];
         int.TryParse(tables[23],out EffectType);
         int.TryParse(tables[24],out StartupFrames);
         if (tables[25].Contains("["))
         {
            ActiveFrames = JsonMapper.ToObject<int[]>(tables[25]);
@@ -181,47 +146,49 @@
            {
                int.TryParse(ActiveFramesStringArray[i],out ActiveFrames[i]);
            }
         }
         int.TryParse(tables[26],out RecoveryFrames);
         int.TryParse(tables[27],out LoopCount);
         int.TryParse(tables[28],out CastPosition);
         int.TryParse(tables[29],out CastIndexNum);
         float.TryParse(tables[30],out CastDistance);
         DamageDivide = JsonMapper.ToObject<int[][]>(tables[31].Replace("(", "[").Replace(")", "]"));
         int.TryParse(tables[32],out BulletEffectId);
         int.TryParse(tables[33],out BulletPos);
         int.TryParse(tables[34],out BulletPath);
         int.TryParse(tables[35],out BulletFlyTime);
         int.TryParse(tables[36],out ExplosionEffectId);
         int.TryParse(tables[37],out ExplosionPos);
         SkillMotionName = tables[38];
         int.TryParse(tables[39],out EffectId);
         int.TryParse(tables[40],out EffectPos);
         int.TryParse(tables[41],out EffectType);
         IconName = tables[42];
         int.TryParse(tables[43],out ExplosionEffect2);
        }
        catch (Exception exception)
        {
            Debug.LogError(exception);
        }
    }
}
         }
         int.TryParse(tables[26],out RecoveryFrames);
         int.TryParse(tables[27],out LoopCount);
         int.TryParse(tables[28],out CastPosition);
         int.TryParse(tables[29],out CastIndexNum);
         float.TryParse(tables[30],out CastDistance);
         DamageDivide = JsonMapper.ToObject<int[][]>(tables[31].Replace("(", "[").Replace(")", "]"));
         int.TryParse(tables[32],out BulletEffectId);
         int.TryParse(tables[33],out BulletPath);
         float.TryParse(tables[34],out BulletFlySpeed);
         int.TryParse(tables[35],out Scattering);
         int.TryParse(tables[36],out ExplosionEffectId);
         int.TryParse(tables[37],out ExplosionEffect2);
         int.TryParse(tables[38],out ExplosionEffect3);
         int.TryParse(tables[39],out ExplosionEffect4);
         int.TryParse(tables[40],out EffectId);
         int.TryParse(tables[41],out EffectId2);
         int.TryParse(tables[42],out MStartEffectId);
         int.TryParse(tables[43],out BuffEffect);
         int.TryParse(tables[44],out TriggerEffect);
        }
        catch (Exception exception)
        {
            Debug.LogError(exception);
        }
    }
}