/// <summary> /// 退出探索场景 /// </summary> public void QuitExploreScene() { Time.timeScale = 1; this.gameObject.SetActive(false); GameManager.Instance.persistDataManager.SaveDataInExplore(null, true); // 停止播放探索背景音乐 GameManager.Instance.soundManager.StopBgm(); Camera.main.transform.SetParent(null); Transform exploreMask = Camera.main.transform.Find("ExploreMask"); exploreMask.GetComponent <UnityArmatureComponent> ().animation.Stop(); exploreMask.gameObject.SetActive(false); // 玩家退出探索场景 battlePlayerCtr.QuitExplore(); // 退出探索UI界面 expUICtr.QuitExplore(); // 释放无用资源 GameManager.Instance.gameDataCenter.ReleaseDataWithDataTypes(new GameDataCenter.GameDataType[] { GameDataCenter.GameDataType.GameLevelDatas, GameDataCenter.GameDataType.EquipmentModels, GameDataCenter.GameDataType.EquipmentSprites, GameDataCenter.GameDataType.ConsumablesModels, GameDataCenter.GameDataType.ConsumablesSprites, GameDataCenter.GameDataType.SpecialItemModels, GameDataCenter.GameDataType.SpecialItemSprites, GameDataCenter.GameDataType.SkillGemstoneModels, GameDataCenter.GameDataType.SkillGemstoneSprites, GameDataCenter.GameDataType.SpellItemModels, GameDataCenter.GameDataType.SkillScrollModels, GameDataCenter.GameDataType.SkillScrollSprites, GameDataCenter.GameDataType.CharacterSprites, GameDataCenter.GameDataType.ChatRecord, GameDataCenter.GameDataType.Diary, GameDataCenter.GameDataType.Monsters, GameDataCenter.GameDataType.MonstersUI, GameDataCenter.GameDataType.MonstersData, GameDataCenter.GameDataType.NPCs, GameDataCenter.GameDataType.Skills, GameDataCenter.GameDataType.SkillSprites, GameDataCenter.GameDataType.Effects, GameDataCenter.GameDataType.MapSprites, GameDataCenter.GameDataType.MapTileAtlas, GameDataCenter.GameDataType.MiniMapSprites, GameDataCenter.GameDataType.CurrentMapMiniMapRecord, GameDataCenter.GameDataType.MapEventsRecords, GameDataCenter.GameDataType.CurrentMapEventsRecord, GameDataCenter.GameDataType.CurrentMapWordsRecord, GameDataCenter.GameDataType.Proverbs, GameDataCenter.GameDataType.Puzzle, GameDataCenter.GameDataType.BagCanvas, GameDataCenter.GameDataType.ShareCanvas, GameDataCenter.GameDataType.NPCCanvas, GameDataCenter.GameDataType.ExploreScene, GameDataCenter.GameDataType.SettingCanvas, GameDataCenter.GameDataType.ShareCanvas, GameDataCenter.GameDataType.GuideCanvas }); GameManager.Instance.UIManager.SetUpCanvasWith(CommonData.homeCanvasBundleName, "HomeCanvas", () => { TransformManager.FindTransform("HomeCanvas").GetComponent <HomeViewController> ().SetUpHomeView(); }, true, false); Destroy(this.gameObject, 0.3f); }