Пример #1
0
        /// <summary>
        /// 执行存档读取操作
        /// </summary>
        public static void DoLoad(int dataId)
        {
            OnLoad = true;
            // 防止UI活动生成新的SingletonObject实例
            UIDate.instance.gameObject.SetActive(false);
            // 来自DateFile.BackToStartMenu()方法,载入存档前清空,防止载入存档时载入奇书数据时卡档
            SingletonObject.ClearInstances();
            // 释放资源
            SubSystems.OnUnloadGameData();

            MainMenu.instance.SetLoadIndex(dataId);
        }
Пример #2
0
 /// <summary>
 /// 执行存档读取操作
 /// </summary>
 public static void DoLoad(int dataId)
 {
     OnLoad = true;
     // 先 ChangeGameState , 擠掉之前的 GameState
     // 避免在 DateFile.instance.Initialize 時觸發 前一個 State 的 OnExit
     // 會造成一些問題 (例如讀檔後戰鬥黑屏)
     Game.Instance.ChangeGameState(eGameState.Login, new object[] { eMainMenuShow.None });
     // 用 GMPanel 的寫法
     SubSystems.OnLeaveGame();
     GameData.Common.OnLeaveGame();
     WorldMapSystem.instance.ResetWorldMap();
     UIManager.Instance.DestroyAllOldPrefabs();
     SingletonObject.ClearInstances();
     DateFile.instance.Initialize(dataId, false);
 }