1
0
mirror of https://github.com/ppy/osu.git synced 2025-01-12 11:42:54 +08:00

Simplify classic behaviour flag to only need to be specified on the slider itself

This commit is contained in:
Dean Herbert 2023-11-02 17:39:23 +09:00
parent a7705284e7
commit bf9f20705f
No known key found for this signature in database
2 changed files with 13 additions and 5 deletions

View File

@ -42,10 +42,6 @@ namespace osu.Game.Rulesets.Osu.Mods
{
case Slider slider:
slider.ClassicSliderBehaviour = NoSliderHeadAccuracy.Value;
foreach (var head in slider.NestedHitObjects.OfType<SliderHeadCircle>())
head.ClassicSliderBehaviour = NoSliderHeadAccuracy.Value;
break;
}
}

View File

@ -127,7 +127,18 @@ namespace osu.Game.Rulesets.Osu.Objects
/// Whether this <see cref="Slider"/>'s judgement is fully handled by its nested <see cref="HitObject"/>s.
/// If <c>false</c>, this <see cref="Slider"/> will be judged proportionally to the number of nested <see cref="HitObject"/>s hit.
/// </summary>
public bool ClassicSliderBehaviour = false;
public bool ClassicSliderBehaviour
{
get => classicSliderBehaviour;
set
{
classicSliderBehaviour = value;
if (HeadCircle != null)
HeadCircle.ClassicSliderBehaviour = value;
}
}
private bool classicSliderBehaviour;
public BindableNumber<double> SliderVelocityMultiplierBindable { get; } = new BindableDouble(1)
{
@ -196,6 +207,7 @@ namespace osu.Game.Rulesets.Osu.Objects
StartTime = e.Time,
Position = Position,
StackHeight = StackHeight,
ClassicSliderBehaviour = ClassicSliderBehaviour,
});
break;