Also add potentially missed intermediate parents

This commit is contained in:
Dan Balasescu 2024-04-11 16:53:04 +09:00
parent fefcd17db9
commit f5555b9fa4
No known key found for this signature in database

View File

@ -117,9 +117,11 @@ namespace osu.Game.Rulesets.Difficulty
foreach (var hitObject in getDifficultyHitObjects()) foreach (var hitObject in getDifficultyHitObjects())
{ {
// Add hitobjects between the original and progressive beatmap until the current hitobject's parent appears in the progressive beatmap.
// This covers cases where hitobjects aren't assigned "difficulty" representations because they don't meaningfully contribute to the calculations.
HitObject parent = hitObjectParentLinks[hitObject.BaseObject]; HitObject parent = hitObjectParentLinks[hitObject.BaseObject];
if (progressiveBeatmap.HitObjects.Count == 0 || parent != progressiveBeatmap.HitObjects[^1]) while (progressiveBeatmap.HitObjects.LastOrDefault() != parent)
progressiveBeatmap.HitObjects.Add(parent); progressiveBeatmap.HitObjects.Add(Beatmap.HitObjects[progressiveBeatmap.HitObjects.Count]);
foreach (var skill in skills) foreach (var skill in skills)
{ {