/// <summary> /// Saves user settings and database data to disk. /// </summary> internal bool Save() { try { ConfigManager.SaveConfig(); BeatmapManager.DatabaseSerialize(); PresenceCache.DatabaseSerialize(); CollectionManager.SaveToDisk(); ScoreManager.SaveToDisk(); return(true); } catch (Exception e) { ErrorSubmission.Submit(new OsuError(e) { Feedback = "background-save" }); return(false); } finally { lastSave = GameBase.Time; modeChangeCount = 0; } }
private static void Exit() { BeatmapManager.OnlineFavouritesLoaded = false; forceFullRefresh = false; doNewBeatmapCheck = false; if (GameBase.Mode == OsuModes.BeatmapImport) { GameBase.ChangeModeInstant(GameBase.CallbackMode); } if (GameBase.Tournament && GameBase.TournamentManager) { BeatmapManager.DatabaseSerialize(); } }
public override void Initialize() { BeatmapManager.Initialize(); BeatmapManager.DatabaseSerialize(); if (!(ConfigManager.sSaveUsername && ConfigManager.sSavePassword)) { TopMostMessageBox.Show(LocalisationManager.GetString(OsuString.Tournament_MessageRememberCredentials)); OsuMain.ExitImmediately(); return; } int connectPeriod = 10000; while (!BanchoClient.Connected && (connectPeriod -= 50) > 0) { Thread.Sleep(50); } if (!BanchoClient.Connected) { TopMostMessageBox.Show(LocalisationManager.GetString(OsuString.Tournament_ClientCouldNotConnect)); OsuMain.ExitImmediately(); return; } #if !DEBUG if ((BanchoClient.Permission & Permissions.Tournament) == 0) { TopMostMessageBox.Show(LocalisationManager.GetString(OsuString.Tournament_MessageNoAccess)); OsuMain.ExitImmediately(); return; } #endif initializeSprites(); clients = new TournamentClientManager(this, spriteManager); Lobby = new TournamentLobby(this, spriteManager, 1.01f); base.Initialize(); StateChanged += stateChanged; State = TourneyState.Idle; }