IEnumerator SceneTransition(ScenesEnum scene, float inTime, float outTime, float midTime) { InTransition = true; TransitionUI.DOFade(1, inTime); yield return new WaitForSeconds(inTime); switch (scene) { case ScenesEnum.menu : SceneManager.LoadScene("Menu"); break; case ScenesEnum.main : SceneManager.LoadScene("Main"); break; case ScenesEnum.levelSelect : SceneManager.LoadScene("Level Select"); break; default : Debug.LogError("No case for selected scene : " + scene.ToString()); break; } yield return new WaitForSeconds(midTime); TransitionUI.DOFade(0, outTime); yield return new WaitForSeconds(outTime * 0.7f); InTransition = false; }
public void TransitionToAnotherScene(ScenesEnum scene, float inTime = 0.5f, float outTime = .9f, float midTime = 0.1f) { if (InTransition) Debug.Log("Attempted To Transition while in another transition"); else { StartCoroutine(SceneTransition(scene, inTime, outTime, midTime)); } }
public void LoadScene(ScenesEnum scene) { if (!SceneManager.GetSceneByBuildIndex((int)scene).isLoaded) { SceneManager.LoadScene((int)scene, LoadSceneMode.Additive); } }
/// <summary> /// go to next scenes /// </summary> /// <param name="scenesEnumName">scenes enum names</param> protected void EnterNextScenes(ScenesEnum scenesEnumName) { //turn to logon scenes //you have add level one on ScenesEnum dictionary GlobalParaMgr.NextScenesName = scenesEnumName; SceneManager.LoadScene(ConvertEnumToString.GetInstance().GetStrByEnumScenes(ScenesEnum.LoadingScenes)); }
public void LoadScene(ScenesEnum Scene) { Debug.Log("[AMM] SceneManager - LOADING A SCENE"); switch (Scene) { case ScenesEnum.DefaultOrbitScene: Scenes.DefaultOrbitScene dos = new Scenes.DefaultOrbitScene(); dos.DeleteScript = DeleteScript; dos.Load(); CurrentScene = dos.DeleteScript.baseOrbitScene; Debug.Log("[AMM] DEFAULT ORBIT SCENE LOADED"); break; case ScenesEnum.JoolLaythe: Scenes.JoolLaytheScene jls = new Scenes.JoolLaytheScene(); jls.Load(); CurrentScene = jls.SceneGO; Debug.Log("[AMM] JOOl - LAYTHE SCENE LOADED"); break; case ScenesEnum.VesselDuna: Scenes.VesselDunaScene vd = new Scenes.VesselDunaScene(); vd.DeleteScript = DeleteScript; vd.Load(); CurrentScene = vd.SceneGO; Debug.Log("[AMM] VESSEL DUNA SCENE LOADED"); break; /*default: * dos = new Scenes.DefaultOrbitScene(); * dos.Load(); * Debug.Log("[AMM] DEFAULT ORBIT SCENE LOADED"); * break;*/ } }
IEnumerator SceneTransition(ScenesEnum scene, float inTime, float outTime, float midTime) { InTransition = true; TransitionUI.DOFade(1, inTime); yield return(new WaitForSeconds(inTime)); switch (scene) { case ScenesEnum.menu: SceneManager.LoadScene("Menu"); break; case ScenesEnum.main: SceneManager.LoadScene("Main"); break; case ScenesEnum.levelSelect: SceneManager.LoadScene("Level Select"); break; default: Debug.LogError("No case for selected scene : " + scene.ToString()); break; } yield return(new WaitForSeconds(midTime)); TransitionUI.DOFade(0, outTime); yield return(new WaitForSeconds(outTime * 0.7f)); InTransition = false; }
public static void SceneChange(ScenesEnum scenenName) { //获取当前场景名字 string beforeSceneName = SceneManager.GetActiveScene().name; GameCommonInfo.ScenesChangeData.beforeScene = EnumUtil.GetEnum <ScenesEnum>(beforeSceneName); GameCommonInfo.ScenesChangeData.loadingScene = scenenName; //SceneManager.LoadSceneAsync(EnumUtil.GetEnumName(ScenesEnum.LoadingScene)); SceneManager.LoadScene(EnumUtil.GetEnumName(ScenesEnum.LoadingScene)); }
/// <summary> /// 改变场景 /// </summary> /// <param name="scenes"></param> public void ChangeScene(ScenesEnum scenes) { //打开加载UI UIHandler.Instance.OpenUIAndCloseOther <UILoading>(UIEnum.Loading); //删除世界数据 WorldCreateHandler.Instance.ClearWorld(); //因为场景处理器只在本场景使用,所以跳转之后可以删除 Destroy(this.gameObject); //场景修改 SceneUtil.SceneChange(scenes); }
public string GetStrByEnumScenes(ScenesEnum scenesEnum) { if (scenesEnumLib != null && scenesEnumLib.Count >= 1) { return(scenesEnumLib[scenesEnum]); } else { return(null); } }
public void TransitionToAnotherScene(ScenesEnum scene, float inTime = 0.5f, float outTime = .9f, float midTime = 0.1f) { if (InTransition) { Debug.Log("Attempted To Transition while in another transition"); } else { StartCoroutine(SceneTransition(scene, inTime, outTime, midTime)); } }
//Covert enum scenes to strings and get it's names public string GetStrByEnumScenes(ScenesEnum scenesEnum) { if (_DicScenesEnumLib != null && _DicScenesEnumLib.Count >= 1) { return(_DicScenesEnumLib[scenesEnum]); } else { Debug.LogWarning(GetType() + "/GetStrByEnumScenes()/_DicScenesEnumLib.Count<=0!, please check eumes"); return(null); } }
//得到字符串形式的场景名称 public string GetStrByEnumScenes(ScenesEnum scenesEnum) { if (_DicScenesEnumLib != null && _DicScenesEnumLib.Count >= 1) { return(_DicScenesEnumLib[scenesEnum]); } else { Debug.LogWarning(GetType() + "没有得到场景的枚举类型"); return(null); } }
public void GetStoryInfoByScene(ScenesEnum scene, Action <List <StoryInfoBean> > action) { List <StoryInfoBean> listData = GetModel().GetStoryInfoByScene(scene); if (listData != null) { GetView().GetStoryInfoSuccess(listData, action); } else { GetView().GetStoryInfoFail(); } }
public void ChangeScene(ScenesEnum scenes) { //关门所有天气 GameWeatherHandler.Instance.CloseWeather(); //停止所有控制 GameControlHandler.Instance.EndAllControl(); //停止时间 GameTimeHandler.Instance.SetTimeStop(); //关闭所有UI UIHandler.Instance.manager.CloseAllUI(); //关闭所有音乐 AudioHandler.Instance.StopMusic(); //切换场景 SceneUtil.SceneChange(scenes); }
//save game config private void StoreTOXML_GlobalParaData() { string playerName = GlobalParaMgr.PlayerName; ScenesEnum scenesName = GlobalParaMgr.NextScenesName; GlobalParameterData GPD = new GlobalParameterData(scenesName, playerName); //Object serialization string s = XmlOperation.GetInstance().SerializeObject(GPD, typeof(GlobalParameterData)); //create xml file, and save data to this xml file if (!string.IsNullOrEmpty(_FileNameByGlobalParameterData)) { XmlOperation.GetInstance().CreateXML(_FileNameByGlobalParameterData, s); } Log.Write(GetType() + "StoreTOXML_GlobalParaData()/ xml path =" + _FileNameByGlobalParameterData); }
public StoryInfoBean CheckStory(GameDataBean gameData, ScenesEnum scenesEnum, TownBuildingEnum positionType, int outOrIn) { if (mapStory == null) { return(null); } foreach (long key in mapStory.Keys) { StoryInfoBean storyInfo = mapStory[key]; //TODO 检测条件 //判断场景是否符合 if (scenesEnum != storyInfo.GetStoryScene()) { continue; } //判断该事件是否可重复触发 if (storyInfo.trigger_loop == 0) { //如果已经触发过该事件 if (gameData.CheckTriggeredEvent(storyInfo.id)) { continue; } } //检测触发条件 if (!EventTriggerEnumTools.CheckIsAllTrigger(gameData, storyInfo.trigger_condition)) { continue; } //如果是小镇 if (storyInfo.story_scene == (int)ScenesEnum.GameTownScene) { //判断地点是否正确 if (positionType != (TownBuildingEnum)storyInfo.location_type || outOrIn != storyInfo.out_in) { continue; } } return(storyInfo); } return(null); }
public List <StoryInfoBean> GetStoryInfoByScene(ScenesEnum scene) { return(mStoryInfoService.QueryStoryInfoByScene((int)scene)); }
public void SwitchScene(ScenesEnum Scene) { CurrentScene.SetActive(false); LoadScene(Scene); }
// Called in files public void LoadScene(ScenesEnum scenesEnum) { string name = sceneNames[(int)scenesEnum]; StartCoroutine(LoadingSceneModeSingle(name)); }
/// <summary> /// 转换场景 /// </summary> public static void ChangeScenes(ScenesEnum nextScenes) { SceneManager.LoadScene(nextScenes.ToString()); currentScenes = nextScenes; }
/// <summary> /// 进入下一个场景,scenesEnumName为场景的枚举 /// </summary> /// <param name="scenesEnumName"></param> protected void EnterNextScenes(ScenesEnum scenesEnumName) { GlobalParameterManager.NextScenesName = scenesEnumName; SceneManager.LoadScene(ConvertEnumToStr.GetInstance().GetStrByEnumScenes(ScenesEnum.LoadingScenes)); }
public void UnloadSceneAndLoadNext(ScenesEnum scene) { UnloadScene(scene); LoadScene(scene + 1); }
/// <summary> /// 转换场景 /// </summary> /// <param name="nextScenes"></param> /// <param name="asyncOperation"></param> public static void ChangeScenes(ScenesEnum nextScenes, out AsyncOperation asyncOperation) { asyncOperation = SceneManager.LoadSceneAsync(nextScenes.ToString()); }
public void QueryStoryInfoDataByScene(ScenesEnum scenesEnum) { listStoryInfo = storyInfoService.QueryStoryData((int)scenesEnum); }
public void UnloadScene(ScenesEnum scene) { SceneManager.UnloadSceneAsync((int)scene); }
public bool HasUnlockedScene(CaseSceneType sceneType, ScenesEnum sceneEnum) { return(m_UnlockedSceneEnumsSetBySceneType[(int)sceneType].Contains(sceneEnum)); }
public void UnlockScene(CaseSceneType sceneType, ScenesEnum sceneEnum) { m_UnlockedSceneEnumsSetBySceneType[(int)sceneType].Add(sceneEnum); Debug.LogFormat("Unlock scene: type {0}, enum {1}", sceneType, sceneEnum); }
/// <summary> /// 检测故事是否触发 /// </summary> /// public StoryInfoBean CheckStory(GameDataBean gameData, ScenesEnum scenesEnum) { return(CheckStory(gameData, scenesEnum, TownBuildingEnum.Town, 2)); }
/// <summary> /// goto next scene /// </summary> /// <param name="scenesEnumName">Scenes of enum name</param> protected void EnterNextScenes(ScenesEnum scenesEnumName) { //go next scene GlobalParaMgr.NextScenesName = scenesEnumName; //Loadingscenesに入る Application.LoadLevel(ConvertEnumToStr.GetInstance().GetStrByEnumScenes(ScenesEnum.GameScenes)); }
public void Init(SceneData sceneData, bool isSceneUnlocked) { m_SceneEnum = sceneData.sceneEnum; sceneNameText.text = sceneData.sceneName; button.interactable = isSceneUnlocked; }