private void SceneLoaded(Scene to, LoadSceneMode mode) { Logger.Debug($"Scene loaded: \"{to.name}\""); if (to.name == "MenuCore") { PluginUI.Init(); GameController.Init(to); LeaderboardController.Init(to); Controllers.PlayerController.Init(to); VoiceChatWorker.Init(); } try { if (to.name == "MenuCore" && SteamAPI.getLobbyID().m_SteamID > 0) { Logger.Debug("Creating new lobby"); SteamAPI.CreateLobby(!Config.Instance.IsPublic); Controllers.PlayerController.Instance.DestroyAvatars(); } } catch (Exception e) { Logger.Error(e); } }
private void SceneManager_activeSceneChanged(Scene from, Scene to) { log.Info($"Scene change from {@from.name} to {to.name}"); if (to.name.ToLower().Contains("menu")) { PluginUI.Init(); } }
private void ActiveSceneChanged(Scene from, Scene to) { Logger.Debug($"Active scene changed from \"{from.name}\" to \"{to.name}\""); CurrentScene = to.name; if (from.name == "EmptyTransition" && to.name == "Menu") { PluginUI.Init(); GameController.Init(to); LeaderboardController.Init(to); Controllers.PlayerController.Init(to); VoiceChatWorker.Init(); } else { GameController.Instance?.ActiveSceneChanged(from, to); LeaderboardController.Instance?.ActiveSceneChanged(from, to); } }