Files
zeling_v2/Assets/Scripts/Player/PlayerAnimationConfigSO.cs
2026-05-08 11:04:00 +08:00

45 lines
1.3 KiB
C#

using UnityEngine;
namespace BaseGames.Player
{
[CreateAssetMenu(menuName = "Player/AnimationConfig")]
public class PlayerAnimationConfigSO : ScriptableObject
{
[Header("移动")]
public AnimationClip Idle;
public AnimationClip Run;
public AnimationClip Jump;
public AnimationClip Fall;
public AnimationClip Dash;
[Header("墙")]
public AnimationClip WallSlide;
[Header("受伤 / 死亡")]
public AnimationClip Hurt;
public AnimationClip Dead;
[Header("弹簧")]
public AnimationClip UseSpring;
[Header("地面攻击(连招序列)")]
public AnimationClip[] GroundAttacks;
[Header("空中攻击")]
public AnimationClip AirAttack;
public AnimationClip UpAttack;
public AnimationClip DownAttack; // 戳击 (Pogo)
[Header("弹反")]
public AnimationClip ParryStart;
public AnimationClip ParrySuccess;
/// <summary>按连招步骤取地面攻击动画,越界自动取最后一个。</summary>
public AnimationClip GetAttackClip(int step)
{
if (GroundAttacks == null || GroundAttacks.Length == 0) return null;
return step < GroundAttacks.Length ? GroundAttacks[step] : GroundAttacks[^1];
}
}
}