45 lines
1.4 KiB
C#
45 lines
1.4 KiB
C#
![]() |
using TEngine;
|
|||
|
using UnityEngine;
|
|||
|
using UnityEngine.Rendering.Universal;
|
|||
|
|
|||
|
namespace GameLogic
|
|||
|
{
|
|||
|
public class GameChangeSceneProcedure : ProcedureBase
|
|||
|
{
|
|||
|
bool isLoading = false;
|
|||
|
|
|||
|
|
|||
|
protected override void OnEnter(IFsm<IProcedureManager> procedureOwner)
|
|||
|
{
|
|||
|
base.OnEnter(procedureOwner);
|
|||
|
Log.Debug("OnEnter GameChangeSceneProcedure");
|
|||
|
|
|||
|
string sceneName = procedureOwner.GetData<string>("SceneName");
|
|||
|
|
|||
|
Log.Debug($"加载场景: {sceneName}");
|
|||
|
|
|||
|
// 打开加载场景UI
|
|||
|
GameModule.Scene.LoadScene(sceneName, callBack: (handle) =>
|
|||
|
{
|
|||
|
Log.Debug($"加载场景完成: {sceneName}");
|
|||
|
isLoading = true;
|
|||
|
|
|||
|
// 切换流程
|
|||
|
switch (sceneName)
|
|||
|
{
|
|||
|
// case "GameMap_Pve":
|
|||
|
// ChangeState<GameMapPveProcedure>(procedureOwner);
|
|||
|
// break;
|
|||
|
case "Game":
|
|||
|
ChangeState<GameSceneProcedure>(procedureOwner);
|
|||
|
break;
|
|||
|
}
|
|||
|
|
|||
|
GameModule.UI.UICamera.GetComponent<UniversalAdditionalCameraData>().renderType = CameraRenderType.Overlay;
|
|||
|
Camera.main.GetComponent<UniversalAdditionalCameraData>().cameraStack.Add(GameModule.UI.UICamera);
|
|||
|
});
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
}
|