Esempio n. 1
0
 /// <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);
     }
 }
Esempio n. 2
0
    /// <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();
    }