//------------------------------------------------------------
// Game Framework
// Copyright © 2013-2021 loyalsoft. All rights reserved.
// Homepage: http://www.game7000.com/
// Feedback: http://www.game7000.com/
//------------------------------------------------------------
using GameFramework;
using GameFramework.Event;
using UnityEngine.SceneManagement;
namespace UnityGameFramework.Runtime
{
///
/// 激活场景被改变事件。
///
public sealed class ActiveSceneChangedEventArgs : GameEventArgs
{
///
/// 激活场景被改变事件编号。
///
public static readonly int EventId = typeof(ActiveSceneChangedEventArgs).GetHashCode();
///
/// 初始化激活场景被改变事件的新实例。
///
public ActiveSceneChangedEventArgs()
{
LastActiveScene = default(Scene);
ActiveScene = default(Scene);
}
///
/// 获取激活场景被改变事件编号。
///
public override int Id
{
get
{
return EventId;
}
}
///
/// 获取上一个被激活的场景。
///
public Scene LastActiveScene
{
get;
private set;
}
///
/// 获取被激活的场景。
///
public Scene ActiveScene
{
get;
private set;
}
///
/// 创建激活场景被改变事件。
///
/// 上一个被激活的场景。
/// 被激活的场景。
/// 创建的激活场景被改变事件。
public static ActiveSceneChangedEventArgs Create(Scene lastActiveScene, Scene activeScene)
{
ActiveSceneChangedEventArgs activeSceneChangedEventArgs = ReferencePool.Acquire();
activeSceneChangedEventArgs.LastActiveScene = lastActiveScene;
activeSceneChangedEventArgs.ActiveScene = activeScene;
return activeSceneChangedEventArgs;
}
///
/// 清理激活场景被改变事件。
///
public override void Clear()
{
LastActiveScene = default(Scene);
ActiveScene = default(Scene);
}
}
}