mirror of
https://github.com/ppy/osu.git
synced 2024-11-11 10:18:22 +08:00
Fix flashlight dim being applied before slider start time
Closes https://github.com/ppy/osu/issues/26515. Compare https://github.com/ppy/osu/pull/26053.
This commit is contained in:
parent
f85e6add8e
commit
0b2b1fc588
@ -50,7 +50,7 @@ namespace osu.Game.Rulesets.Osu.Mods
|
|||||||
public void ApplyToDrawableHitObject(DrawableHitObject drawable)
|
public void ApplyToDrawableHitObject(DrawableHitObject drawable)
|
||||||
{
|
{
|
||||||
if (drawable is DrawableSlider s)
|
if (drawable is DrawableSlider s)
|
||||||
s.Tracking.ValueChanged += flashlight.OnSliderTrackingChange;
|
s.Tracking.ValueChanged += _ => flashlight.OnSliderTrackingChange(s);
|
||||||
}
|
}
|
||||||
|
|
||||||
private partial class OsuFlashlight : Flashlight, IRequireHighFrequencyMousePosition
|
private partial class OsuFlashlight : Flashlight, IRequireHighFrequencyMousePosition
|
||||||
@ -66,10 +66,10 @@ namespace osu.Game.Rulesets.Osu.Mods
|
|||||||
FlashlightSmoothness = 1.4f;
|
FlashlightSmoothness = 1.4f;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnSliderTrackingChange(ValueChangedEvent<bool> e)
|
public void OnSliderTrackingChange(DrawableSlider e)
|
||||||
{
|
{
|
||||||
// If a slider is in a tracking state, a further dim should be applied to the (remaining) visible portion of the playfield.
|
// If a slider is in a tracking state, a further dim should be applied to the (remaining) visible portion of the playfield.
|
||||||
FlashlightDim = e.NewValue ? 0.8f : 0.0f;
|
FlashlightDim = Time.Current >= e.HitObject.StartTime && e.Tracking.Value ? 0.8f : 0.0f;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override bool OnMouseMove(MouseMoveEvent e)
|
protected override bool OnMouseMove(MouseMoveEvent e)
|
||||||
|
Loading…
Reference in New Issue
Block a user