| | |
| | | } |
| | | |
| | | 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; |
| | |
| | | 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); |