1
0
mirror of https://github.com/ppy/osu.git synced 2025-01-30 00:03:08 +08:00

initial commit

This commit is contained in:
Givikap120 2024-09-28 13:31:59 +03:00
parent c1e51e05df
commit 1bb41fd823

View File

@ -215,19 +215,12 @@ namespace osu.Game.Rulesets.Osu.Difficulty.Preprocessing
if (slider.LazyEndPosition != null)
return;
// TODO: This commented version is actually correct by the new lazer implementation, but intentionally held back from
// difficulty calculator to preserve known behaviour.
// double trackingEndTime = Math.Max(
// // SliderTailCircle always occurs at the final end time of the slider, but the player only needs to hold until within a lenience before it.
// slider.Duration + SliderEventGenerator.TAIL_LENIENCY,
// // There's an edge case where one or more ticks/repeats fall within that leniency range.
// // In such a case, the player needs to track until the final tick or repeat.
// slider.NestedHitObjects.LastOrDefault(n => n is not SliderTailCircle)?.StartTime ?? double.MinValue
// );
double trackingEndTime = Math.Max(
// SliderTailCircle always occurs at the final end time of the slider, but the player only needs to hold until within a lenience before it.
slider.StartTime + slider.Duration + SliderEventGenerator.TAIL_LENIENCY,
slider.StartTime + slider.Duration / 2
// There's an edge case where one or more ticks/repeats fall within that leniency range.
// In such a case, the player needs to track until the final tick or repeat.
slider.NestedHitObjects.LastOrDefault(n => n is not SliderTailCircle)?.StartTime ?? double.MinValue
);
IList<HitObject> nestedObjects = slider.NestedHitObjects;