31 lines
904 B
C#
31 lines
904 B
C#
using System.Collections;
|
|
using Animancer;
|
|
using UnityEngine;
|
|
|
|
namespace BaseGames.Enemies.Abilities
|
|
{
|
|
/// <summary>
|
|
/// 出场演出能力:播放出场动画后切换到 Combat 阶段(适用于小Boss或需出场动画的精英怪)。
|
|
/// 可复用于任何"播出场动画→进入战斗"的敌人。
|
|
/// </summary>
|
|
public class AppearAbility : EnemyAbilityBase
|
|
{
|
|
private AppearAbilitySO _cfg;
|
|
|
|
protected override void Awake()
|
|
{
|
|
base.Awake();
|
|
_cfg = ResolveConfig<AppearAbilitySO>();
|
|
}
|
|
|
|
protected override IEnumerator ExecuteCoroutine()
|
|
{
|
|
Phase = AbilityRunState.Active;
|
|
if (_cfg == null || _cfg.appearClip.Clip == null) yield break;
|
|
|
|
_animancer.Play(_cfg.appearClip);
|
|
yield return EnemyAbilityWaits.Get(_cfg.appearClip.Clip.length);
|
|
}
|
|
}
|
|
}
|