37 lines
1.3 KiB
C#
37 lines
1.3 KiB
C#
using System;
|
||
|
||
namespace Continentis.MainGame.Character
|
||
{
|
||
/// <summary>
|
||
/// 角色动画驱动器统一接口。
|
||
/// 由具体的 MonoBehaviour 实现,挂载在角色 Prefab 上,
|
||
/// CombatCharacterViewBase 在初始化时自动检测并持有引用。
|
||
/// </summary>
|
||
public interface ICharacterAnimator
|
||
{
|
||
/// <summary>
|
||
/// 初始化动画驱动器,由 CombatCharacterViewBase.Initialize() 调用。
|
||
/// </summary>
|
||
void InitializeAnimator(CombatCharacterViewBase view);
|
||
|
||
/// <summary>
|
||
/// 播放指定名称的动作(如 "Attack"、"Hit"、"Skill")。
|
||
/// 播放完毕后自动回到 Idle,并触发 onComplete 回调。
|
||
/// </summary>
|
||
/// <param name="actionName">动作名称,需与 CharacterData.animations 的 Key 一致。</param>
|
||
/// <param name="speed">播放速度倍率,默认 1.0。</param>
|
||
/// <param name="onComplete">动作播放完毕后的回调,可为 null。</param>
|
||
void PlayAction(string actionName, float speed = 1f, Action onComplete = null);
|
||
|
||
/// <summary>
|
||
/// 立即切回 Idle 状态。
|
||
/// </summary>
|
||
void ReturnToIdle();
|
||
|
||
/// <summary>
|
||
/// 暂停或恢复动画播放。
|
||
/// </summary>
|
||
void SetPause(bool isPaused);
|
||
}
|
||
}
|