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; }
public void ReloadDatabase() { GameBase.Scheduler.Add(delegate { if (!GameBase.Tournament) { return; } if (GameBase.FadeState != FadeStates.Idle) { return; } BeatmapManager.Initialize(true); if (GameBase.Mode != OsuModes.Play) { StreamingManager.StopSpectating(); StreamingManager.StartSpectating(StreamingManager.CurrentlySpectating); } }); }
public void SetBeatmap(string checksum) { if (!GameBase.Tournament) { return; } if (GameBase.FadeState != FadeStates.Idle) { return; } if (GameBase.Mode == OsuModes.Play) { return; } GameBase.Scheduler.Add(() => { Beatmap b = BeatmapManager.GetBeatmapByChecksum(checksum); if (b == null) { BeatmapManager.Initialize(true); b = BeatmapManager.GetBeatmapByChecksum(checksum); } if (BeatmapManager.Current == b) { return; } if (b != null) { BeatmapManager.Current = b; AudioEngine.LoadAudioForPreview(BeatmapManager.Current, true, true, false); } }); }