public virtual void StartScene(LoadingMenuSceneInfo loadingSceneInfo) { if (opened) { OnButtonClicked(); } }
public void StartMenuScene(UserEncounter userEncounter, ILoadingScreen loadingScreen, MenuArea menuArea) { ImageHolder.BeginHoldingData(); var categories = GetMenuEncountersInfo(userEncounter); var menuSceneInfo = new LoadingMenuSceneInfo(userEncounter.User, loadingScreen, menuArea, categories); MenuSceneStarter.StartScene(menuSceneInfo); }
protected virtual void ReturnToMainMenu() { ImageHolder.BeginHoldingData(); var sceneInfo = WriterSceneInfoSelectedListener.CurrentValue.SceneInfo; var categories = MenuInfoReader.GetMenuEncountersInfo(sceneInfo.User); var menuSceneInfo = new LoadingMenuSceneInfo(sceneInfo.User, sceneInfo.LoadingScreen, MenuArea.InitialSelection, categories); MenuSceneStarter.StartScene(menuSceneInfo); }
public virtual void StartScene(LoadingMenuSceneInfo data) { data.LoadingScreen?.Show(); SignalBus.Fire <SceneChangedSignal>(); var loading = UnityEngine.SceneManagement.SceneManager.LoadSceneAsync(ScenePath); loading.completed += (asyncOperation) => InitializeScene(data); }
protected virtual void InitializeScene(LoadingMenuSceneInfo data) { if (SceneManager <LoadingMenuSceneInfo> .Instance == null) { Debug.LogError("Started scene UI is not Menu scene."); return; } SceneManager <LoadingMenuSceneInfo> .Instance.Display(data); }
public abstract void Display(LoadingMenuSceneInfo sceneInfo);
public LoadingMenuSceneInfoSelectedEventArgs(LoadingMenuSceneInfo sceneInfo) => SceneInfo = sceneInfo;