using UnityEngine;
namespace BaseGames.Enemies
{
///
/// 敌人动画配置 SO(架构 07_EnemyModule §5)。
/// 所有字段为 AnimationClip,由 Animancer 直接播放。
///
[CreateAssetMenu(menuName = "Enemies/AnimationConfig")]
public class EnemyAnimationConfigSO : ScriptableObject
{
[Header("基础")]
public AnimationClip Idle;
public AnimationClip Walk;
public AnimationClip Run;
[Header("战斗")]
public AnimationClip Attack;
[Header("受击")]
public AnimationClip Hurt;
public AnimationClip Stagger;
public AnimationClip Dead;
///
/// 按字段名返回 Clip(BD_PlayAnimation 使用)。
/// 支持字段名和常见别名(如 Attack_Melee / Idle 等)。
///
public AnimationClip GetClipByName(string name)
{
return name switch
{
"Idle" => Idle,
"Walk" => Walk,
"Run" => Run,
"Attack" or "Attack_Melee" => Attack,
"Hurt" => Hurt,
"Stagger" => Stagger,
"Dead" or "Death" => Dead,
_ => null,
};
}
}
}