48 lines
1.0 KiB
C#
48 lines
1.0 KiB
C#
|
|
using UnityEngine;
|
|||
|
|
|
|||
|
|
namespace Demo.Game
|
|||
|
|
{
|
|||
|
|
/// <summary>
|
|||
|
|
/// 统一Update接口,用于扁平化调度
|
|||
|
|
/// </summary>
|
|||
|
|
public interface IUpdateable
|
|||
|
|
{
|
|||
|
|
/// <summary>
|
|||
|
|
/// 直接Update调用,无递归
|
|||
|
|
/// </summary>
|
|||
|
|
void DoUpdate(float currentTime, float deltaTime, ScriptableObject.TickType tickType);
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 对象名称,用于调试
|
|||
|
|
/// </summary>
|
|||
|
|
string GetUpdateName();
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 是否已应用脚本
|
|||
|
|
/// </summary>
|
|||
|
|
bool IsUpdateReady { get; }
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// Update模式
|
|||
|
|
/// </summary>
|
|||
|
|
public enum UpdateMode
|
|||
|
|
{
|
|||
|
|
/// <summary>
|
|||
|
|
/// 永久活跃(整个关卡周期)
|
|||
|
|
/// </summary>
|
|||
|
|
Permanent,
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 有时间范围限制
|
|||
|
|
/// </summary>
|
|||
|
|
TimeBound,
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 手动控制激活/停用
|
|||
|
|
/// </summary>
|
|||
|
|
Manual
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|