Skip to content

Commit 7cdbc2c

Browse files
committed
Fix "spins per minute" shows up early #31173
Make isSpinnableTime public in SpinnerRotationTracker and use it to set Tracking in OsuModSpunOut. Tracking was previously set to true, causing the "spins per minute" to appear immediately when the spinner appeared.
1 parent 84ab5a5 commit 7cdbc2c

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

osu.Game.Rulesets.Osu/Mods/OsuModSpunOut.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ private void onSpinnerUpdate(Drawable drawable)
3737
{
3838
var spinner = (DrawableSpinner)drawable;
3939

40-
spinner.RotationTracker.Tracking = true;
40+
spinner.RotationTracker.Tracking = spinner.RotationTracker.IsSpinnableTime;
4141

4242
// early-return if we were paused to avoid division-by-zero in the subsequent calculations.
4343
if (Precision.AlmostEquals(spinner.Clock.Rate, 0))

osu.Game.Rulesets.Osu/Skinning/Default/SpinnerRotationTracker.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ public SpinnerRotationTracker(DrawableSpinner drawableSpinner)
5252
/// <summary>
5353
/// Whether currently in the correct time range to allow spinning.
5454
/// </summary>
55-
private bool isSpinnableTime => drawableSpinner.HitObject.StartTime <= Time.Current && drawableSpinner.HitObject.EndTime > Time.Current;
55+
public bool IsSpinnableTime => drawableSpinner.HitObject.StartTime <= Time.Current && drawableSpinner.HitObject.EndTime > Time.Current;
5656

5757
protected override bool OnMouseMove(MouseMoveEvent e)
5858
{
@@ -79,7 +79,7 @@ protected override void Update()
7979
lastAngle = thisAngle;
8080
}
8181

82-
IsSpinning.Value = isSpinnableTime && Math.Abs(currentRotation - Rotation) > 10f;
82+
IsSpinning.Value = IsSpinnableTime && Math.Abs(currentRotation - Rotation) > 10f;
8383
Rotation = (float)Interpolation.Damp(Rotation, currentRotation, 0.99, Math.Abs(Time.Elapsed));
8484
}
8585

@@ -92,7 +92,7 @@ protected override void Update()
9292
/// <param name="delta">The delta angle.</param>
9393
public void AddRotation(float delta)
9494
{
95-
if (!isSpinnableTime)
95+
if (!IsSpinnableTime)
9696
return;
9797

9898
if (!rotationTransferred)

0 commit comments

Comments
 (0)