yyl
2025-12-15 f236bbc6384c1f4b5a16739e4124ab832090ddc3
Main/System/Battle/BattleUtility.cs
@@ -324,7 +324,7 @@
    }
    public static BattleHurtParam CalcBattleHurtParam(SkillBase skillBase, int hitIndex, BattleObject target, 
        HB427_tagSCUseSkill.tagSCUseSkillHurt hurt, BattleDrops battleDrops, HB422_tagMCTurnFightObjDead deadPack)
        HB427_tagSCUseSkill.tagSCUseSkillHurt hurt, BattleDrops battleDrops, BattleDeadPack deadPack)
    {
        long suckHp = GetSuckHp(skillBase.tagUseSkillAttack);
        SkillConfig skillConfig = skillBase.skillConfig;
@@ -646,20 +646,55 @@
        return null;
    }
    public static List<HB422_tagMCTurnFightObjDead> FindDeadPack(List<GameNetPackBasic> packList)
    public static List<BattleDeadPack> FindDeadPack(List<GameNetPackBasic> packList)
    {
        List<HB422_tagMCTurnFightObjDead> deadPacks = new List<HB422_tagMCTurnFightObjDead>();
        List<BattleDeadPack> deadPacks = new List<BattleDeadPack>();
        for (int i = 0; i < packList.Count; i++)
        {
            var pack = packList[i];
            //   寻找死亡包 找到死亡包之后要找掉落包 不能超过技能包
            if (pack is HB422_tagMCTurnFightObjDead deadPack)
            {
                deadPacks.Add(deadPack);
                deadPacks.Add(new BattleDeadPack { deadPack = deadPack });
            }
            else if (pack is CustomHB426CombinePack)
            else if (pack is CustomHB426CombinePack combinePack)
            {
                break;
                if (deadPacks.Count > 0)
                {
                    HB427_tagSCUseSkill hB427_TagSCUseSkill = combinePack.GetMainHB427SkillPack();
                    if (null == hB427_TagSCUseSkill)
                    {
                        break;
                    }
                    else
                    {
                        var skillID = hB427_TagSCUseSkill.SkillID;
                        var skillConfig = SkillConfig.Get((int)skillID);
                        if ((SkillTriggerTiming)skillConfig.ClientTriggerTiming == SkillTriggerTiming.Death)
                        {
                            for (int j = 0 ; j < deadPacks.Count; j ++)
                            {
                                var parentPack = deadPacks[j];
                                if (parentPack.IsOwnSkill(hB427_TagSCUseSkill))
                                {
                                    parentPack.SetDeathSkill(combinePack);
                                    break;
                                }
                            }
                        }
                        else
                        {
                            break;
                        }
                    }
                }
                else
                {
                    break;
                }
            }
        }
        // Debug.LogError("find dead pack " + deadPacks.Count);