yyl
2025-07-29 b0a5d4688f1af73b5ad03ccc2df11c9aac1523a9
Main/Config/Configs/SkillConfig.cs
@@ -1,11 +1,9 @@
//--------------------------------------------------------
//    [Author]:           YYL
//    [  Date ]:           2025年7月28日
//    [  Date ]:           2025年7月26日
//--------------------------------------------------------
using System.Collections.Generic;
using System.IO;
using System.Threading;
using System;
using UnityEngine;
using LitJson;
@@ -15,42 +13,85 @@
    public int SkillID;
   public string SkillName;
   public string Description;
   public string IconName;
   public int SkillTypeID;
   public int SkillLV;
   public int SkillMaxLV;
   public int UseType;
   public int FuncType;
   public int CastTime;
   public int SkillType;
   public int HurtType;
   public int ContinueUse;
   public int AtkType;
   public int TagAim;
   public int LastTime;
   public int AtkRadius;
   public int Tag;
   public int AtkDist;
   public int StiffTime;
   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 MP;
   public int HP;
   public int XP;
   public int UseItemID;
   public int UseItemCount;
   public int Effect1;
   public int EffectValue11;
   public int EffectValue12;
   public int EffectValue13;
   public int Effect2;
   public int EffectValue21;
   public int EffectValue22;
   public int EffectValue23;
   public int Effect3;
   public int EffectValue31;
   public int EffectValue32;
   public int EffectValue33;
   public int Effect4;
   public int EffectValue41;
   public int EffectValue42;
   public int EffectValue43;
   public int Effect5;
   public int EffectValue51;
   public int EffectValue52;
   public int EffectValue53;
   public int Effect6;
   public int EffectValue61;
   public int EffectValue62;
   public int EffectValue63;
   public int HappenRate6;
   public int LastTime6;
   public int SkillEnhance1;
   public int SkillEnhance2;
   public int StateSkillLV;
   public int LearnSkillReq;
   public int LearnSkillLV;
   public int LearnLVReq;
   public int LearnSkillPointReq;
   public int FightPower;
   public int StartupFrames;
   public int ActiveFrames;
   public int RecoveryFrames;
   public int LoopCount;
   public int LVUpCostMoneyType;
   public int LVUpCostMoney;
   public int LVUpCostExp;
   public int ClientActionLimit;
   public int ClientSkillSeriesLimit;
   public int SkillOfSeries;
   public int ExpendMPRate;
   public int ExAttr1;
   public int ExAttr3;
   public int ExAttr4;
   public int ExAttr5;
   public int BuffEffectID;
   public int EffectName;
   public string IconName;
   public string Description;
   public string BuffDescription;
   public int BuffDisplay;
   public int CastPosition;
   public int CastIndexNum;
   public float CastDistance;
   public int CastDistance;
   public int[] TriggerFrames;
   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 int ExplotionEffectId;
   public float FlyTime;
    public override int LoadKey(string _key)
    {
@@ -66,125 +107,175 @@
         SkillName = tables[1];
         Description = tables[2];
         int.TryParse(tables[2],out SkillTypeID);
         IconName = tables[3];
         int.TryParse(tables[3],out SkillLV);
         int.TryParse(tables[4],out FuncType);
         int.TryParse(tables[4],out SkillMaxLV);
         int.TryParse(tables[5],out SkillType);
         int.TryParse(tables[5],out UseType);
         int.TryParse(tables[6],out HurtType);
         int.TryParse(tables[6],out FuncType);
         int.TryParse(tables[7],out AtkType);
         int.TryParse(tables[7],out CastTime);
         int.TryParse(tables[8],out TagAim);
         int.TryParse(tables[8],out SkillType);
         int.TryParse(tables[9],out LastTime);
         int.TryParse(tables[9],out HurtType);
         int.TryParse(tables[10],out CoolDownTime);
         int.TryParse(tables[10],out ContinueUse);
         int.TryParse(tables[11],out EffectID1);
         int.TryParse(tables[11],out AtkType);
         if (tables[12].Contains("["))
         int.TryParse(tables[12],out AtkRadius);
         int.TryParse(tables[13],out Tag);
         int.TryParse(tables[14],out AtkDist);
         int.TryParse(tables[15],out StiffTime);
         int.TryParse(tables[16],out CoolDownTime);
         int.TryParse(tables[17],out MP);
         int.TryParse(tables[18],out HP);
         int.TryParse(tables[19],out XP);
         int.TryParse(tables[20],out UseItemID);
         int.TryParse(tables[21],out UseItemCount);
         int.TryParse(tables[22],out Effect1);
         int.TryParse(tables[23],out EffectValue11);
         int.TryParse(tables[24],out EffectValue12);
         int.TryParse(tables[25],out EffectValue13);
         int.TryParse(tables[26],out Effect2);
         int.TryParse(tables[27],out EffectValue21);
         int.TryParse(tables[28],out EffectValue22);
         int.TryParse(tables[29],out EffectValue23);
         int.TryParse(tables[30],out Effect3);
         int.TryParse(tables[31],out EffectValue31);
         int.TryParse(tables[32],out EffectValue32);
         int.TryParse(tables[33],out EffectValue33);
         int.TryParse(tables[34],out Effect4);
         int.TryParse(tables[35],out EffectValue41);
         int.TryParse(tables[36],out EffectValue42);
         int.TryParse(tables[37],out EffectValue43);
         int.TryParse(tables[38],out Effect5);
         int.TryParse(tables[39],out EffectValue51);
         int.TryParse(tables[40],out EffectValue52);
         int.TryParse(tables[41],out EffectValue53);
         int.TryParse(tables[42],out Effect6);
         int.TryParse(tables[43],out EffectValue61);
         int.TryParse(tables[44],out EffectValue62);
         int.TryParse(tables[45],out EffectValue63);
         int.TryParse(tables[46],out HappenRate6);
         int.TryParse(tables[47],out LastTime6);
         int.TryParse(tables[48],out SkillEnhance1);
         int.TryParse(tables[49],out SkillEnhance2);
         int.TryParse(tables[50],out StateSkillLV);
         int.TryParse(tables[51],out LearnSkillReq);
         int.TryParse(tables[52],out LearnSkillLV);
         int.TryParse(tables[53],out LearnLVReq);
         int.TryParse(tables[54],out LearnSkillPointReq);
         int.TryParse(tables[55],out FightPower);
         int.TryParse(tables[56],out LVUpCostMoneyType);
         int.TryParse(tables[57],out LVUpCostMoney);
         int.TryParse(tables[58],out LVUpCostExp);
         int.TryParse(tables[59],out ClientActionLimit);
         int.TryParse(tables[60],out ClientSkillSeriesLimit);
         int.TryParse(tables[61],out SkillOfSeries);
         int.TryParse(tables[62],out ExpendMPRate);
         int.TryParse(tables[63],out ExAttr1);
         int.TryParse(tables[64],out ExAttr3);
         int.TryParse(tables[65],out ExAttr4);
         int.TryParse(tables[66],out ExAttr5);
         int.TryParse(tables[67],out BuffEffectID);
         int.TryParse(tables[68],out EffectName);
         IconName = tables[69];
         Description = tables[70];
         BuffDescription = tables[71];
         int.TryParse(tables[72],out BuffDisplay);
         int.TryParse(tables[73],out CastPosition);
         int.TryParse(tables[74],out CastDistance);
         if (tables[75].Contains("["))
         {
            EffectValues1 = JsonMapper.ToObject<int[]>(tables[12]);
            TriggerFrames = JsonMapper.ToObject<int[]>(tables[75]);
         }
         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[] TriggerFramesStringArray = tables[75].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
            TriggerFrames = new int[TriggerFramesStringArray.Length];
            for (int i=0;i<TriggerFramesStringArray.Length;i++)
            {
                int.TryParse(EffectValues1StringArray[i],out EffectValues1[i]);
                int.TryParse(TriggerFramesStringArray[i],out TriggerFrames[i]);
            }
         }
         int.TryParse(tables[13],out EffectID2);
         DamageDivide = JsonMapper.ToObject<int[][]>(tables[76].Replace("(", "[").Replace(")", "]"));
         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]);
            }
         }
         SkillMotionName = tables[77];
         int.TryParse(tables[15],out EffectID3);
         int.TryParse(tables[78],out EffectId);
         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[79],out ExplotionEffectId);
         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);
         float.TryParse(tables[80],out FlyTime);
        }
        catch (Exception exception)
        {