/// <summary> /// 检测按键 分发事件 /// </summary> /// <param name="key"></param> private void CheckKeyCode(KeyCode key) { if (Input.GetKeyDown(key)) { //事件中心模块 分发按下事件 EventCenter.Getinstate().EventTrigger("某键被按下", key); } if (Input.GetKeyUp(key)) { //事件中心模块 分发 EventCenter.Getinstate().EventTrigger("某键被按下", key); } }
/// <summary> /// 协程异步加载场景 /// </summary> /// <param name="name"></param> /// <param name="fun"></param> /// <returns></returns> private IEnumerator ReallyLoadSceneAsyn(string name, UnityAction fun) { AsyncOperation ao = SceneManager.LoadSceneAsync(name); //可以得到场景加载的进度 while (!ao.isDone) { //事件中心向外分发 进度情况 外面想用就用 EventCenter.Getinstate().EventTrigger("进度条更新", ao.progress); yield return(ao.progress);//一帧一帧更新,在这里更新进度条 } //加载完成之后才会执行 fun fun(); }