Restore multiplayer to use beatmap track

This commit is contained in:
Dean Herbert 2020-08-21 16:59:11 +09:00
parent 70697cf1a0
commit a47b8222b5

View File

@ -52,7 +52,7 @@ namespace osu.Game.Screens.Multi
private readonly Bindable<FilterCriteria> currentFilter = new Bindable<FilterCriteria>(new FilterCriteria()); private readonly Bindable<FilterCriteria> currentFilter = new Bindable<FilterCriteria>(new FilterCriteria());
[Resolved] [Resolved]
private MusicController musicController { get; set; } private MusicController music { get; set; }
[Cached(Type = typeof(IRoomManager))] [Cached(Type = typeof(IRoomManager))]
private RoomManager roomManager; private RoomManager roomManager;
@ -343,10 +343,15 @@ namespace osu.Game.Screens.Multi
{ {
if (screenStack.CurrentScreen is MatchSubScreen) if (screenStack.CurrentScreen is MatchSubScreen)
{ {
musicController.CurrentTrack.RestartPoint = Beatmap.Value.Metadata.PreviewTime; var track = Beatmap.Value?.Track;
musicController.CurrentTrack.Looping = true;
musicController.EnsurePlayingSomething(); if (track != null)
{
track.RestartPoint = Beatmap.Value.Metadata.PreviewTime;
track.Looping = true;
music.EnsurePlayingSomething();
}
} }
else else
{ {
@ -356,8 +361,13 @@ namespace osu.Game.Screens.Multi
private void cancelLooping() private void cancelLooping()
{ {
musicController.CurrentTrack.Looping = false; var track = Beatmap?.Value?.Track;
musicController.CurrentTrack.RestartPoint = 0;
if (track != null)
{
track.Looping = false;
track.RestartPoint = 0;
}
} }
protected override void Dispose(bool isDisposing) protected override void Dispose(bool isDisposing)