| | |
| | | |
| | | protected bool isFinish = false; |
| | | |
| | | protected bool isFinishFrameEnd = false; |
| | | |
| | | protected Action<int, List<HB427_tagSCUseSkill.tagSCUseSkillHurt>> onHit; |
| | | |
| | | public SkillEffect(SkillConfig _skillConfig, BattleObject _caster, HB427_tagSCUseSkill _tagUseSkillAttack) |
| | |
| | | public virtual void Play(Action<int, List<HB427_tagSCUseSkill.tagSCUseSkillHurt>> _onHit) |
| | | { |
| | | onHit = _onHit; |
| | | if (skillConfig.EffectId > 0) |
| | | { |
| | | caster.battleField.battleEffectMgr.PlayEffect(caster, skillConfig.EffectId, caster.heroRectTrans, caster.Camp); |
| | | } |
| | | if (skillConfig.EffectId2 > 0) |
| | | { |
| | | caster.battleField.battleEffectMgr.PlayEffect(caster, skillConfig.EffectId2, caster.heroRectTrans, caster.Camp); |
| | | } |
| | | } |
| | | |
| | | public virtual void Run() |
| | |
| | | |
| | | public virtual void OnMiddleFrameStart(int times) |
| | | { |
| | | if (skillConfig.MStartEffectId <= 0) |
| | | return; |
| | | // 中摇固定特效 |
| | | caster.battleField.battleEffectMgr.PlayEffect(caster, skillConfig.MStartEffectId, caster.heroGo.transform, caster.Camp); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 后摇开始 |
| | | /// </summary> |
| | | public virtual void OnFinalFrameStart() |
| | | { |
| | | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 后摇结束 |
| | | /// </summary> |
| | | public virtual void OnFinalFrameEnd() |
| | | { |
| | | isFinishFrameEnd = true; |
| | | } |
| | | |
| | | public virtual bool IsFinished() |
| | | { |
| | | return isFinish; |
| | | return isFinish && isFinishFrameEnd; |
| | | } |
| | | |
| | | public virtual void ForceFinished() |
| | | { |
| | | isFinish = true; |
| | | isFinishFrameEnd = true; |
| | | } |
| | | } |