//场景加载完成并初始化 public void sceneLoadCompleteAndInit(string strSceneName, SceneConfig config) { _sceneMono = null; if (pCurScene != null) { Destroy(pCurScene); } _taskLoadScene = null; GameObject curScene = GameObject.Find("Scene"); if (pLoadingScene != null) { pCurScene = pLoadingScene; pCurScene.transform.name = "Scene"; pLoadingScene = null; } else { pCurScene = curScene; } sCurSenceName = strSceneName; if (pCurScene == null) { return; } Transform tfWorld = pCurScene.transform.Find("World"); if (tfWorld != null) { tfWorld.gameObject.SetActive(true); } Transform tfCameras = pCurScene.transform.Find("Cameras"); if (tfCameras != null) { tfCameras.gameObject.SetActive(true); } Transform uiCamObj = pCurScene.transform.Find("Cameras/UICamera"); if (uiCamObj) { uiCamObj.gameObject.SetActive(false); } FollowToSceneCamera follower = null; GameObject pListener = GameObject.Find("Listener");//声音接收者 if (pListener == null) { pListener = new GameObject("Listener"); pListener.AddComponent <AudioListener>(); follower = pListener.AddComponent <FollowToSceneCamera>(); DontDestroyOnLoad(pListener); } else { follower = pListener.GetComponent <FollowToSceneCamera>(); } sceneCameraObj = pCurScene.transform.Find("Cameras/SceneCamera").gameObject; if (sceneCameraObj && !sceneCameraObj.GetComponent <CameraAjustor>()) { sceneCameraObj.AddComponent <CameraAjustor>(); follower.camera_tf = sceneCameraObj.transform; AudioListener lisener = sceneCameraObj.GetComponent <AudioListener>(); GameObject.Destroy(lisener); } //音源 if (config.battleScene == 1) { UtilTools.MultiTouchSwitch(true); // _sceneMono = pCurScene.AddComponent<BattleScene>() as BaseScene; } else { BGM csBGM = pCurScene.AddComponent <BGM>(); UtilTools.MultiTouchSwitch(false); switch (strSceneName) { case SceneName.s_StartupScene: _sceneMono = curScene.GetComponent <StartUpScene>() as BaseScene; csBGM.strAudioClipName = "Sounds/BGM/bgm_login_loop"; break; case SceneName.s_LoadingScene: _sceneMono = pCurScene.AddComponent <LoadingScene>(); break; default: _sceneMono = pCurScene.AddComponent <BaseScene>(); break; } // if (strSceneName != SceneName.s_StartupScene && strSceneName != SceneName.s_LoadingScene) // { // AllServerBroadcastController controller_temp = (AllServerBroadcastController)UIManager.GetControler(UIName.ALL_SERVER_BROADCAST); // if (controller_temp != null) // { // controller_temp.ContinuePlay(); // } // } } }
//加载 private void Awake() { bCanClick = true; Caching.CleanCache(); FollowToSceneCamera follower = null; GameObject pListener = GameObject.Find("Listener");//声音接收者 if (pListener == null) { pListener = new GameObject("Listener"); pListener.AddComponent <AudioListener>(); follower = pListener.AddComponent <FollowToSceneCamera>(); DontDestroyOnLoad(pListener); } else { follower = pListener.GetComponent <FollowToSceneCamera>(); } GameObject pSingletonObj = GameObject.Find("Singleton"); if (pSingletonObj == null) { pSingletonObj = new GameObject("Singleton"); pSingletonObj.transform.position = default(Vector3); } DontDestroyOnLoad(pSingletonObj); if (SDKManager.isAppStoreVersion()) { if (pSingletonObj.GetComponent <ObjectCCallback>() == null) { pSingletonObj.AddComponent <ObjectCCallback>(); Utils.LogSys.Log("XXXXXXXXXXXXXXXX--Add ObjectCCallback--XXXXXXXXXXXXXXXX"); } } DestroyUnUsedUIRoot(); GameObject camObj1 = GameObject.Find("Scene/Cameras/SceneCamera"); if (camObj1 && !camObj1.GetComponent <CameraAjustor>()) { camObj1.AddComponent <CameraAjustor>(); follower.camera_tf = camObj1.transform; } GameObject camObj2 = GameObject.Find("UIRoot/UICamera"); if (camObj2 && !camObj2.GetComponent <CameraAjustor>()) { camObj2.SetActive(true); camObj2.AddComponent <CameraAjustor>(); } GameSceneManager.uiCameraObj = camObj2; GameObject versionUpdate = GameObject.Find("VersionUpdate"); //versionUpdate.transform.parent = GameObject.Find("UIRoot").transform; //DontDestroyOnLoad(versionUpdate.gameObject); CheckGameHead(); versionUpdate.gameObject.SetActive(true); //uiBattlePauseController.GetPreState();//获取声音设置 GameSceneManager.getInstance().SceneMono = this; bCanClick = true; }