yyl
2025-08-25 1ec983f61def3ad0ee85da87b197259c054644dd
125 战斗 技能bug修复
2个文件已修改
74 ■■■■■ 已修改文件
Main/Config/Configs/SkillConfig.cs 61 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Battle/Skill/SkillBase.cs 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/Config/Configs/SkillConfig.cs
@@ -1,6 +1,6 @@
//--------------------------------------------------------
//    [Author]:           YYL
//    [  Date ]:           Friday, August 22, 2025
//    [  Date ]:           Monday, August 25, 2025
//--------------------------------------------------------
using System.Collections.Generic;
@@ -37,7 +37,6 @@
    public int[] EffectValues2;
    public int EffectID3;
    public int[] EffectValues3;
    public int ConnSkill;
    public int CoolDownTime;
    public int[] EnhanceSkillList;
    public int FightPower;
@@ -52,7 +51,7 @@
    public int BulletEffectId;
    public int BulletPos;
    public int BulletPath;
    public int BulletFlyTime;
    public float BulletFlyTime;
    public int ExplosionEffectId;
    public int ExplosionPos;
    public string SkillMotionName;
@@ -150,17 +149,15 @@
                }
            }
            int.TryParse(tables[21],out ConnSkill);
            int.TryParse(tables[21],out CoolDownTime);
            int.TryParse(tables[22],out CoolDownTime);
            if (tables[23].Contains("["))
            if (tables[22].Contains("["))
            {
                EnhanceSkillList = JsonMapper.ToObject<int[]>(tables[23]);
                EnhanceSkillList = JsonMapper.ToObject<int[]>(tables[22]);
            }
            else
            {
                string[] EnhanceSkillListStringArray = tables[23].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                string[] EnhanceSkillListStringArray = tables[22].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                EnhanceSkillList = new int[EnhanceSkillListStringArray.Length];
                for (int i=0;i<EnhanceSkillListStringArray.Length;i++)
                {
@@ -168,17 +165,17 @@
                }
            }
            int.TryParse(tables[24],out FightPower);
            int.TryParse(tables[23],out FightPower);
            int.TryParse(tables[25],out StartupFrames);
            int.TryParse(tables[24],out StartupFrames);
            if (tables[26].Contains("["))
            if (tables[25].Contains("["))
            {
                ActiveFrames = JsonMapper.ToObject<int[]>(tables[26]);
                ActiveFrames = JsonMapper.ToObject<int[]>(tables[25]);
            }
            else
            {
                string[] ActiveFramesStringArray = tables[26].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                string[] ActiveFramesStringArray = tables[25].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                ActiveFrames = new int[ActiveFramesStringArray.Length];
                for (int i=0;i<ActiveFramesStringArray.Length;i++)
                {
@@ -186,41 +183,41 @@
                }
            }
            int.TryParse(tables[27],out RecoveryFrames);
            int.TryParse(tables[26],out RecoveryFrames);
            int.TryParse(tables[28],out LoopCount);
            int.TryParse(tables[27],out LoopCount);
            int.TryParse(tables[29],out CastPosition);
            int.TryParse(tables[28],out CastPosition);
            int.TryParse(tables[30],out CastIndexNum);
            int.TryParse(tables[29],out CastIndexNum);
            float.TryParse(tables[31],out CastDistance);
            float.TryParse(tables[30],out CastDistance);
            DamageDivide = JsonMapper.ToObject<int[][]>(tables[32].Replace("(", "[").Replace(")", "]"));
            DamageDivide = JsonMapper.ToObject<int[][]>(tables[31].Replace("(", "[").Replace(")", "]"));
            int.TryParse(tables[33],out BulletEffectId);
            int.TryParse(tables[32],out BulletEffectId);
            int.TryParse(tables[34],out BulletPos);
            int.TryParse(tables[33],out BulletPos);
            int.TryParse(tables[35],out BulletPath);
            int.TryParse(tables[34],out BulletPath);
            int.TryParse(tables[36],out BulletFlyTime);
            float.TryParse(tables[35],out BulletFlyTime);
            int.TryParse(tables[37],out ExplosionEffectId);
            int.TryParse(tables[36],out ExplosionEffectId);
            int.TryParse(tables[38],out ExplosionPos);
            int.TryParse(tables[37],out ExplosionPos);
            SkillMotionName = tables[39];
            SkillMotionName = tables[38];
            int.TryParse(tables[40],out EffectId);
            int.TryParse(tables[39],out EffectId);
            int.TryParse(tables[41],out EffectPos);
            int.TryParse(tables[40],out EffectPos);
            int.TryParse(tables[42],out EffectType);
            int.TryParse(tables[41],out EffectType);
            IconName = tables[43];
            IconName = tables[42];
            int.TryParse(tables[44],out ExplosionEffect2);
            int.TryParse(tables[43],out ExplosionEffect2);
        }
        catch (Exception exception)
        {
Main/System/Battle/Skill/SkillBase.cs
@@ -551,6 +551,11 @@
            {
                return false;
            }
            else
            {
                OnSkillFinished();
                skillEffect = null;
            }
        }
        return isFinished;
@@ -563,6 +568,14 @@
    public void OnSkillFinished()
    {
        if (skillEffect != null)
        {
            if (!skillEffect.IsFinished())
            {
                return;
            }
        }
        BattleDebug.LogError(GetType().Name + " Skill Finished");
        while (packList.Count > 0)
        {