Files
zeling_v2/Assets/_Game/Scripts/Combat/PoiseWindowConfig.cs
T

32 lines
1.1 KiB
C#

using System;
namespace BaseGames.Combat
{
/// <summary>
/// 描述某个状态/技能在特定动画时间段内拥有的霸体等级(架构 06_CombatModule §13)。
/// 在状态机的 Update() 或 AnimancerEvent 中与动画归一化时间对比,决定当前霸体等级。
/// 使用示例:
/// <code>
/// [SerializeField] private PoiseWindowConfig[] _poiseWindows;
/// public PoiseLevel GetCurrentPoiseLevel()
/// {
/// float t = _animancer.States.Current?.NormalizedTime ?? 0f;
/// foreach (var w in _poiseWindows)
/// if (t >= w.NormalizedStart && t <= w.NormalizedEnd)
/// return w.Level;
/// return PoiseLevel.None;
/// }
/// </code>
/// </summary>
[Serializable]
public struct PoiseWindowConfig
{
/// <summary>此时间窗口期间的霸体等级。</summary>
public PoiseLevel Level;
/// <summary>动画归一化时间起点(0~1)。</summary>
public float NormalizedStart;
/// <summary>动画归一化时间终点(0~1)。</summary>
public float NormalizedEnd;
}
}