using System;
|
using System.Collections.Generic;
|
using UnityEngine;
|
|
public class SkillEffect
|
{
|
protected SkillConfig skillConfig;
|
protected BattleObject caster;
|
protected H0604_tagUseSkillAttack tagUseSkillAttack;// 目标列表
|
|
public SkillEffect(SkillConfig _skillConfig, BattleObject _caster, H0604_tagUseSkillAttack _tagUseSkillAttack)
|
{
|
skillConfig = _skillConfig;
|
caster = _caster;
|
tagUseSkillAttack = _tagUseSkillAttack;
|
}
|
|
public Action OnHit; // 表现到达目标时回调
|
|
//
|
public virtual void Play(Action<int, List<H0604_tagUseSkillAttack.tagSkillHurtObj>> _onHit)
|
{
|
// OnHit = _onHit;
|
// switch (skillConfig.effectType)
|
// {
|
// case SkillEffectType.StageEffect:
|
// Debug.LogError("播放场景特效");
|
// break;
|
// case SkillEffectType.Bullet:
|
// // 伪代码:表现子弹飞行
|
// Debug.Log("播放子弹特效");
|
// // 到达目标时
|
// OnHit?.Invoke();
|
// break;
|
// case SkillEffectType.Direct:
|
// // 伪代码:直接在目标身上播放特效
|
// Debug.Log("播放直接特效");
|
// OnHit?.Invoke();
|
// break;
|
// case SkillEffectType.BuffEffect:
|
// // 伪代码:播放持续特效
|
// Debug.Log("播放Buff特效");
|
// break;
|
// default:
|
// break;
|
// }
|
}
|
|
public virtual void Run()
|
{
|
|
}
|
}
|