Пример #1
0
        IEnumerator coroutineLoading(string levelName, dfProgressBar bar, ISwitchPanelBehaviour switchPanel)
        {
            async = Application.LoadLevelAsync(levelName);

again:
            if (async.isDone)
            {
                Debug.Log("completed");
                if (switchPanel != null)
                {
                    switchPanel.Switch();
                }
            }
            else
            {
                Debug.Log("LoadNewLevel: async.progress=" + async.progress);
                if (bar != null)
                {
                    bar.Value = async.progress;
                }
                yield return(new WaitForEndOfFrame());

                goto again;
            }
        }
Пример #2
0
 public LevelFactory(string levelName, dfProgressBar loadingBar, ISwitchPanelBehaviour panelBehaviour)
 {
     _loaders = new List <LevelLoader>
     {
         new ReloadCurrent(levelName, loadingBar, panelBehaviour),
         new LoadNewLevel(levelName, loadingBar, panelBehaviour),
     };
 }
Пример #3
0
 protected virtual void Start()
 {
     if (loadingBar != null)
     {
         loadingBar.Hide();
     }
     switchPanelBehaviour = new Switchable(ToHidePanel, ToShowPanel);
 }
Пример #4
0
 protected LevelLoader(string levelName, dfProgressBar _loadingBar, ISwitchPanelBehaviour _switchableBehaviour)
 {
     LevelName           = levelName;
     loadingBar          = _loadingBar;
     switchableBehaviour = _switchableBehaviour;
 }
Пример #5
0
 public LoadNewLevel(string levelName, dfProgressBar _loadingBar, ISwitchPanelBehaviour _switchableBehaviour)
     : base(levelName, _loadingBar, _switchableBehaviour)
 {
 }
Пример #6
0
 public ReloadCurrent(string levelName, dfProgressBar _loadingBar, ISwitchPanelBehaviour _switchableBehaviour)
     : base(levelName, _loadingBar, _switchableBehaviour)
 {
 }