hch
9 天以前 cb653cf75b17b9bdca0b5b9e6b88edf1ca72e90c
Main/Config/Configs/SkillConfig.cs
@@ -1,197 +1,170 @@
//--------------------------------------------------------
//    [Author]:           YYL
//    [  Date ]:           2025年8月5日
//--------------------------------------------------------
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 string SkillName;
   public string Description;
   public string IconName;
   public int FuncType;
   public int SkillType;
   public int HurtType;
   public int AtkType;
   public int TagAim;
   public int LastTime;
   public int CoolDownTime;
   public int EffectID1;
   public int[] EffectValues1;
   public int EffectID2;
   public int[] EffectValues2;
   public int EffectID3;
   public int[] EffectValues3;
   public int ConnSkill;
   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 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);
         SkillName = tables[1];
         Description = tables[2];
         IconName = tables[3];
         int.TryParse(tables[4],out FuncType);
         int.TryParse(tables[5],out SkillType);
         int.TryParse(tables[6],out HurtType);
         int.TryParse(tables[7],out AtkType);
         int.TryParse(tables[8],out TagAim);
         int.TryParse(tables[9],out LastTime);
         int.TryParse(tables[10],out CoolDownTime);
         int.TryParse(tables[11],out EffectID1);
         if (tables[12].Contains("["))
//--------------------------------------------------------
//    [Author]:           YYL
//    [  Date ]:           Wednesday, October 15, 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 FightPower;
   public string SkillMotionName;
   public string IconName;
   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);
         int.TryParse(tables[16],out FightPower);
         SkillMotionName = tables[17];
         IconName = tables[18];
         int.TryParse(tables[19],out EffectType);
         int.TryParse(tables[20],out StartupFrames);
         if (tables[21].Contains("["))
         {
            EffectValues1 = JsonMapper.ToObject<int[]>(tables[12]);
            ActiveFrames = JsonMapper.ToObject<int[]>(tables[21]);
         }
         else
         {
            string[] EffectValues1StringArray = tables[12].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
            EffectValues1 = new int[EffectValues1StringArray.Length];
            for (int i=0;i<EffectValues1StringArray.Length;i++)
            string[] ActiveFramesStringArray = tables[21].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
            ActiveFrames = new int[ActiveFramesStringArray.Length];
            for (int i=0;i<ActiveFramesStringArray.Length;i++)
            {
                int.TryParse(EffectValues1StringArray[i],out EffectValues1[i]);
                int.TryParse(ActiveFramesStringArray[i],out ActiveFrames[i]);
            }
         }
         int.TryParse(tables[13],out EffectID2);
         if (tables[14].Contains("["))
         {
            EffectValues2 = JsonMapper.ToObject<int[]>(tables[14]);
         }
         else
         {
            string[] EffectValues2StringArray = tables[14].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[15],out EffectID3);
         if (tables[16].Contains("["))
         {
            EffectValues3 = JsonMapper.ToObject<int[]>(tables[16]);
         }
         else
         {
            string[] EffectValues3StringArray = tables[16].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[17],out ConnSkill);
         if (tables[18].Contains("["))
         {
            EnhanceSkillList = JsonMapper.ToObject<int[]>(tables[18]);
         }
         else
         {
            string[] EnhanceSkillListStringArray = tables[18].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[19],out FightPower);
         int.TryParse(tables[20],out StartupFrames);
         int.TryParse(tables[21],out ActiveFrames);
         int.TryParse(tables[22],out RecoveryFrames);
         int.TryParse(tables[23],out LoopCount);
         int.TryParse(tables[24],out CastPosition);
         int.TryParse(tables[25],out CastIndexNum);
         float.TryParse(tables[26],out CastDistance);
         DamageDivide = JsonMapper.ToObject<int[][]>(tables[27].Replace("(", "[").Replace(")", "]"));
         int.TryParse(tables[28],out BulletEffectId);
         int.TryParse(tables[29],out BulletPos);
         int.TryParse(tables[30],out BulletPath);
         int.TryParse(tables[31],out BulletFlyTime);
         int.TryParse(tables[32],out ExplosionEffectId);
         int.TryParse(tables[33],out ExplosionPos);
         SkillMotionName = tables[34];
         int.TryParse(tables[35],out EffectId);
         int.TryParse(tables[36],out EffectPos);
         int.TryParse(tables[37],out EffectType);
        }
        catch (Exception exception)
        {
            Debug.LogError(exception);
        }
    }
}
         }
         int.TryParse(tables[22],out RecoveryFrames);
         int.TryParse(tables[23],out LoopCount);
         int.TryParse(tables[24],out CastPosition);
         int.TryParse(tables[25],out CastIndexNum);
         float.TryParse(tables[26],out CastDistance);
         DamageDivide = JsonMapper.ToObject<int[][]>(tables[27].Replace("(", "[").Replace(")", "]"));
         int.TryParse(tables[28],out BulletEffectId);
         int.TryParse(tables[29],out BulletPath);
         float.TryParse(tables[30],out BulletFlySpeed);
         int.TryParse(tables[31],out Scattering);
         int.TryParse(tables[32],out ExplosionEffectId);
         int.TryParse(tables[33],out ExplosionEffect2);
         int.TryParse(tables[34],out ExplosionEffect3);
         int.TryParse(tables[35],out ExplosionEffect4);
         int.TryParse(tables[36],out EffectId);
         int.TryParse(tables[37],out EffectId2);
         int.TryParse(tables[38],out MStartEffectId);
         int.TryParse(tables[39],out BuffEffect);
         int.TryParse(tables[40],out TriggerEffect);
        }
        catch (Exception exception)
        {
            Debug.LogError(exception);
        }
    }
}