public override void ChangeScene(int sceneID, bool needLoading) { if (sceneID != m_CurScene) { string newTexture = ""; string oldTexture = ""; CSceneInfo sceneInfo = StaticData.SceneDataMgr.GetSceneByID((byte)sceneID); if (sceneInfo != null) { newTexture = sceneInfo.m_strRoomSceneTexture; } sceneInfo = StaticData.SceneDataMgr.GetSceneByID((byte)m_CurScene); if (sceneInfo != null) { oldTexture = sceneInfo.m_strRoomSceneTexture; } if (newTexture.Length > 0) { m_CurScene = sceneID; ///StartCoroutine(UpdateScene(newTexture, oldTexture, needLoading)); } } }
public static IEnumerator LoadMatch(byte[] stageInfo) { IEnumerator itor = AnimationLoader.LoadStageSceneAnimation(RoomData.PlayMusciInfo.m_strMusicSource, RoomData.PlaySongMode); while (itor.MoveNext()) { yield return(null); } CSceneInfo sceneInfo = StaticData.SceneDataMgr.GetSceneByID((byte)RoomData.PlayScene); if (sceneInfo != null) { itor = SceneLoader.LoadStageScene(sceneInfo.m_strSceneStage); while (itor.MoveNext()) { yield return(null); } } StageScene stageScene = null; if (CSceneBehaviour.Current != null) { stageScene = CSceneBehaviour.Current.gameObject.AddComponent <StageScene>(); CSceneBehaviour.Current.CurScene = stageScene; } itor = UIMgr.ShowUIAsync(UIFlag.ui_taigu, null); while (itor.MoveNext()) { yield return(null); } itor = CMatchBase.CurrentMatch.PrepareMatch(true, true, stageInfo); while (itor.MoveNext()) { yield return(null); } if (stageScene != null) { stageScene.gameObject.SendMessage("PlayerEnterScene", true, SendMessageOptions.RequireReceiver); } CMatchBase.CurrentMatch.BeginMatch(); }
public static IEnumerator DownLoadMatch() { //yield return UICoroutine.uiCoroutine.StartCoroutine(ClientResourcesMgr.LoadClientResource()); RoomData.PrepareRoom(false, 27, 2246, SongMode.Taiko, "", null, 0); IEnumerator itor = null; itor = AnimationLoader.DownLoadStageSceneAnimation(RoomData.PlayMusciInfo.m_strMusicSource, RoomData.PlaySongMode); while (itor.MoveNext()) { yield return(null); } CSceneInfo sceneInfo = StaticData.SceneDataMgr.GetSceneByID((byte)RoomData.PlayScene); if (sceneInfo != null) { itor = SceneLoader.DownLoadStageScene(sceneInfo.m_strSceneStage); while (itor.MoveNext()) { yield return(null); } } UIFlag targetFlag = UIFlag.ui_taigu; itor = UIMgr.DownLoadUISync(targetFlag); while (itor.MoveNext()) { yield return(null); } itor = LoadMatch(null); while (itor.MoveNext()) { yield return(null); } SwitchingControl.HideSwitching(); }