From 1aff4c2238a9a56a863152955cebd8675f29ff64 Mon Sep 17 00:00:00 2001 From: Dean Herbert Date: Wed, 1 Sep 2021 18:26:00 +0900 Subject: [PATCH] Ensure all hitobject level control points are populated before calling `virtual` defaults application --- osu.Game/Rulesets/Objects/HitObject.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/osu.Game/Rulesets/Objects/HitObject.cs b/osu.Game/Rulesets/Objects/HitObject.cs index b540dc1b6e..4cd9297170 100644 --- a/osu.Game/Rulesets/Objects/HitObject.cs +++ b/osu.Game/Rulesets/Objects/HitObject.cs @@ -106,8 +106,6 @@ namespace osu.Game.Rulesets.Objects /// The cancellation token. public void ApplyDefaults(ControlPointInfo controlPointInfo, BeatmapDifficulty difficulty, CancellationToken cancellationToken = default) { - ApplyDefaultsToSelf(controlPointInfo, difficulty); - if (controlPointInfo is LegacyControlPointInfo legacyInfo) { // This is done here since ApplyDefaultsToSelf may be used to determine the end time @@ -120,6 +118,8 @@ namespace osu.Game.Rulesets.Objects DifficultyControlPoint ??= DifficultyControlPoint.DEFAULT; } + ApplyDefaultsToSelf(controlPointInfo, difficulty); + nestedHitObjects.Clear(); CreateNestedHitObjects(cancellationToken);