Refactor code structure for improved readability and maintainability
This commit is contained in:
24
Assets/_Game/Scripts/Enemies/Abilities/PlayClipAbility.cs
Normal file
24
Assets/_Game/Scripts/Enemies/Abilities/PlayClipAbility.cs
Normal file
@@ -0,0 +1,24 @@
|
||||
using System.Collections;
|
||||
using Animancer;
|
||||
using UnityEngine;
|
||||
|
||||
namespace BaseGames.Enemies.Abilities
|
||||
{
|
||||
/// <summary>
|
||||
/// 播放单个动画 Clip 并等待完成后退出(无副作用)。
|
||||
/// 可复用于任何需要"播一段动画即完成"的能力(如出场激活、台词演出等)。
|
||||
/// </summary>
|
||||
public class PlayClipAbility : EnemyAbilityBase
|
||||
{
|
||||
[SerializeField] private ClipTransition _clip;
|
||||
|
||||
protected override IEnumerator ExecuteCoroutine()
|
||||
{
|
||||
Phase = AbilityRunState.Active;
|
||||
if (_clip.Clip == null) yield break;
|
||||
|
||||
_animancer.Play(_clip);
|
||||
yield return EnemyAbilityWaits.Get(_clip.Clip.length);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user