private static void signalBeatmapCheck() { BeatmapImport.SignalBeatmapCheck(true); switch (GameBase.Mode) { case OsuModes.SelectPlay: case OsuModes.SelectEdit: case OsuModes.SelectMulti: case OsuModes.MatchSetup: NotificationManager.ShowMessageMassive(LocalisationManager.GetString(OsuString.BeatmapManager_NewBeatmapDetected), 2000); break; } }
private static void RestartSpectating(object sender, EventArgs e) { User u = CurrentlySpectating; if (u == null) { return; } BeatmapImport.ForceRun(false); GameBase.Scheduler.Add(delegate { restartSpectatingPoll(u); }, true); }
private void updateBeatmap() { if (BeatmapImport.IsProcessing) { return; } if (Lobby.SpectatingMatch == null) { return; } if ((Lobby.SpectatingMatch.activeMods & Mods.DoubleTime) > 0) { AudioEngine.CurrentPlaybackRate = 150; } else if ((Lobby.SpectatingMatch.activeMods & Mods.HalfTime) > 0) { AudioEngine.CurrentPlaybackRate = 75; } else { AudioEngine.CurrentPlaybackRate = 100; } if (BeatmapManager.Current?.BeatmapChecksum == Lobby.SpectatingMatch.beatmapChecksum) { currentSong.Text = BeatmapManager.Current?.DisplayTitleFullAuto ?? string.Empty; } else { currentSong.Text = Lobby.SpectatingMatch?.beatmapName ?? string.Empty; } playingIcon.Alpha = string.IsNullOrEmpty(currentSong.Text) ? 0 : 1; if (Lobby.SpectatingMatch.beatmapChecksum == BeatmapManager.Current?.BeatmapChecksum) { return; } if (string.IsNullOrEmpty(Lobby.SpectatingMatch.beatmapChecksum)) { pickingUp = false; } else { var b = BeatmapManager.GetBeatmapByChecksum(Lobby.SpectatingMatch.beatmapChecksum); if (b == null) { if (pickingUp) { return; } pickingUp = true; OsuDirect.HandlePickup(Lobby.SpectatingMatch.beatmapChecksum, (o, e) => { BeatmapImport.Start(); pickingUp = false; }, null); } else { BeatmapManager.Load(b); clients.Reset(); } } }