using AlicizaX.Event.Runtime; using AlicizaX.Runtime; namespace AlicizaX.Scene.Runtime { /// /// 加载场景更新事件。 /// public sealed class LoadSceneUpdateEventArgs : GameEventArgs { /// /// 加载场景更新事件编号。 /// public static readonly string EventId = typeof(LoadSceneUpdateEventArgs).FullName; /// /// 初始化加载场景更新事件的新实例。 /// public LoadSceneUpdateEventArgs() { SceneAssetName = null; Progress = 0f; UserData = null; } /// /// 获取加载场景更新事件编号。 /// public override string Id { get { return EventId; } } /// /// 获取场景资源名称。 /// public string SceneAssetName { get; private set; } /// /// 获取加载场景进度。 /// public float Progress { get; private set; } /// /// 获取用户自定义数据。 /// public object UserData { get; private set; } /// /// 创建加载场景更新事件。 /// /// 场景资源名称。 /// 加载场景进度。 /// 用户自定义数据。 /// 创建的加载场景更新事件。 public static LoadSceneUpdateEventArgs Create(string sceneAssetName, float progress, object userData) { LoadSceneUpdateEventArgs loadSceneUpdateEventArgs = ReferencePool.Acquire(); loadSceneUpdateEventArgs.SceneAssetName = sceneAssetName; loadSceneUpdateEventArgs.Progress = progress; loadSceneUpdateEventArgs.UserData = userData; return loadSceneUpdateEventArgs; } /// /// 清理加载场景更新事件。 /// public override void Clear() { SceneAssetName = null; Progress = 0f; UserData = null; } } }