| | |
| | | // 1、2、3号位为前排,默认2号位置为主目标,当1、2、3号位置角色全部死亡,前排将替换成后排,5号位置变更为主目标, |
| | | // 若配置TagAffect细分目标,且人数小于3,则所有被选择目标均为主目标(施法位置会用客户端配置) |
| | | // (即前排默认2号位或5号位规则无效,实际作用多少人就是多少个主目标) (YL : TagAffect>0 && TagAffect != 3就是全体都是主目标 后排一样 ) |
| | | if (skillConfig.TagAffect != 0 && skillConfig.TagAffect != 3 && skillConfig.TagCount < 3) |
| | | if (skillConfig.TagAffect != 0 || skillConfig.TagCount < 3) |
| | | { |
| | | uint objId = targetList[0].ObjID; |
| | | BattleObject target = caster.battleField.battleObjMgr.GetBattleObject((int)objId); |
| | |
| | | } |
| | | break; |
| | | case 3: |
| | | if (skillConfig.TagAffect != 0 && skillConfig.TagAffect != 3 && skillConfig.TagCount < 3) |
| | | if (skillConfig.TagAffect != 0 || skillConfig.TagCount < 3) |
| | | { |
| | | uint objId = targetList[0].ObjID; |
| | | BattleObject target = caster.battleField.battleObjMgr.GetBattleObject((int)objId); |
| | |
| | | |
| | | var bulletCurve = BulletCurveFactory.CreateBulletCurve(caster, skillConfig, effectPlayer, target.heroRectTrans, tagUseSkillAttack, bulletIndex, (index, hitList) => |
| | | { |
| | | if (isFinish) |
| | | return; |
| | | |
| | | |
| | | foreach (var hurt in hitList) |
| | | { |
| | | BattleObject targetObj = caster.battleField.battleObjMgr.GetBattleObject((int)hurt.ObjID); |
| | |
| | | // 击中就销毁子弹 |
| | | caster.battleField.battleEffectMgr.RemoveEffect(skillConfig.BulletEffectId, effectPlayer); |
| | | |
| | | if (isFinish) |
| | | return; |
| | | |
| | | if (bulletIndex >= skillConfig.ActiveFrames.Length - 1) |
| | | { |
| | | isFinish = true; |