mirror of https://github.com/ppy/osu
Add back loop-on-completion
This commit is contained in:
parent
58660c70a3
commit
e9fc783b1d
|
@ -427,23 +427,7 @@ private void beatmapChanged(ValueChangedEvent<WorkingBeatmap> beatmap)
|
|||
|
||||
updateModDefaults();
|
||||
|
||||
var newBeatmap = beatmap.NewValue;
|
||||
|
||||
if (newBeatmap != null)
|
||||
{
|
||||
// MusicController.Completed += () => Scheduler.AddOnce(() => trackCompleted(newBeatmap));
|
||||
newBeatmap.BeginAsyncLoad();
|
||||
}
|
||||
|
||||
// void trackCompleted(WorkingBeatmap b)
|
||||
// {
|
||||
// // the source of track completion is the audio thread, so the beatmap may have changed before firing.
|
||||
// if (Beatmap.Value != b)
|
||||
// return;
|
||||
//
|
||||
// if (!MusicController.Looping && !Beatmap.Disabled)
|
||||
// MusicController.NextTrack();
|
||||
// }
|
||||
beatmap.NewValue?.BeginAsyncLoad();
|
||||
}
|
||||
|
||||
private void modsChanged(ValueChangedEvent<IReadOnlyList<Mod>> mods)
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Linq;
|
||||
using JetBrains.Annotations;
|
||||
using osu.Framework.Allocation;
|
||||
|
@ -323,7 +324,10 @@ private void beatmapChanged(ValueChangedEvent<WorkingBeatmap> beatmap)
|
|||
CurrentTrack = null;
|
||||
|
||||
if (current != null)
|
||||
{
|
||||
trackContainer.Add(CurrentTrack = new DrawableTrack(current.GetRealTrack()));
|
||||
CurrentTrack.Completed += () => onTrackCompleted(current);
|
||||
}
|
||||
|
||||
TrackChanged?.Invoke(current, direction);
|
||||
|
||||
|
@ -332,6 +336,18 @@ private void beatmapChanged(ValueChangedEvent<WorkingBeatmap> beatmap)
|
|||
queuedDirection = null;
|
||||
}
|
||||
|
||||
private void onTrackCompleted(WorkingBeatmap workingBeatmap)
|
||||
{
|
||||
// the source of track completion is the audio thread, so the beatmap may have changed before firing.
|
||||
if (current != workingBeatmap)
|
||||
return;
|
||||
|
||||
Debug.Assert(CurrentTrack != null);
|
||||
|
||||
if (!CurrentTrack.Looping && !beatmap.Disabled)
|
||||
NextTrack();
|
||||
}
|
||||
|
||||
private bool allowRateAdjustments;
|
||||
|
||||
/// <summary>
|
||||
|
|
Loading…
Reference in New Issue