diff --git a/osu.Game/Screens/Play/GameplayClockContainer.cs b/osu.Game/Screens/Play/GameplayClockContainer.cs
index f769bfd326..594df63420 100644
--- a/osu.Game/Screens/Play/GameplayClockContainer.cs
+++ b/osu.Game/Screens/Play/GameplayClockContainer.cs
@@ -17,7 +17,7 @@ using osu.Game.Rulesets.Mods;
namespace osu.Game.Screens.Play
{
///
- /// Manages the various intricacies of the gameplay clock.
+ /// Encapsulates gameplay timing logic and provides a for children.
///
public class GameplayClockContainer : Container
{
@@ -35,12 +35,6 @@ namespace osu.Game.Screens.Play
///
private readonly DecoupleableInterpolatingFramedClock adjustableClock;
- ///
- /// The final clock which is exposed to underlying components.
- ///
- [Cached]
- private readonly GameplayClock gameplayClock;
-
public readonly Bindable UserPlaybackRate = new BindableDouble(1)
{
Default = 1,
@@ -49,16 +43,22 @@ namespace osu.Game.Screens.Play
Precision = 0.1,
};
+ ///
+ /// The final clock which is exposed to underlying components.
+ ///
+ [Cached]
+ private readonly GameplayClock gameplayClock;
+
private Bindable userAudioOffset;
private readonly FramedOffsetClock offsetClock;
public GameplayClockContainer(WorkingBeatmap beatmap, bool allowLeadIn, double gameplayStartTime)
{
- RelativeSizeAxes = Axes.Both;
-
this.beatmap = beatmap;
+ RelativeSizeAxes = Axes.Both;
+
sourceClock = (IAdjustableClock)beatmap.Track ?? new StopwatchClock();
adjustableClock = new DecoupleableInterpolatingFramedClock { IsCoupled = false };