32 lines
1.1 KiB
C#
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;
|
||
}
|
||
}
|