yyl
2025-07-18 cc074976c8644508d80abafbfa8de5d31146abdf
Main/Manager/StageManager.cs
@@ -18,16 +18,18 @@
    public Action BeforeLoadingGameScene;
    // public Action OnSwitchAccount;
    private LaunchWinData launchWinData = null;
    public void Init()
    {
        UIManager.Instance.OnCloseWindow += OnCloseWindow;
    }
    public void Release()
    {
        AfterLoadingGameScene = null;
        BeforeLoadingGameScene = null;
        UIManager.Instance.OnCloseWindow -= OnCloseWindow;
    }
    public async UniTaskVoid ToLoginScene()
@@ -36,7 +38,7 @@
        AsyncOperation asyncOperation = SceneManager.LoadSceneAsync("Login");
        await OnLoading(asyncOperation, ConfigManager.Instance.GetLoadingProgress);
        await OnLoading(asyncOperation, ConfigManager.Instance.GetLoadingProgress, Main.InitManagers);
        Main.OnSwitchToLoginScene();
@@ -95,6 +97,18 @@
        LoadingWin loadingWin = UIManager.Instance.OpenWindow<LoadingWin>();
        LaunchWin launchWin = UIManager.Instance.GetUI<LaunchWin>();
        if (null != launchWin && launchWin.IsActive() && launchWinData == null)
        {
            launchWinData = launchWin.GetData();
        }
        if (null != launchWinData)
        {
            loadingWin.SetData(launchWinData);
            launchWinData = null;
        }
        while (!asyncOperation.isDone)
        {
            if (asyncOperation.progress >= 0.9f)
@@ -129,4 +143,12 @@
        loadingWin.CloseWindow();
    }
    private void OnCloseWindow(UIBase closeUI)
    {
        if (closeUI is LaunchWin)
        {
            launchWinData = (closeUI as LaunchWin).GetData();
        }
    }
}