From ba0cd7a3f27206e5b815b709da91bf46969e3c90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bart=C5=82omiej=20Dach?= Date: Sat, 8 Jul 2023 19:22:32 +0200 Subject: [PATCH] Fix flourish sample not playing if strong hits are hit early --- .../Skinning/Argon/ArgonFlourishTriggerSource.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/osu.Game.Rulesets.Taiko/Skinning/Argon/ArgonFlourishTriggerSource.cs b/osu.Game.Rulesets.Taiko/Skinning/Argon/ArgonFlourishTriggerSource.cs index 728977547c..8dfe31b55d 100644 --- a/osu.Game.Rulesets.Taiko/Skinning/Argon/ArgonFlourishTriggerSource.cs +++ b/osu.Game.Rulesets.Taiko/Skinning/Argon/ArgonFlourishTriggerSource.cs @@ -66,7 +66,10 @@ namespace osu.Game.Rulesets.Taiko.Skinning.Argon if (canFlourish) lastFlourish = h.StartTime; - if (h == hitObject) + // hitObject can be either the strong hit itself (if hit late), or its nested strong object (if hit early) + // due to `GetMostValidObject()` idiosyncrasies. + // whichever it is, if we encounter it during iteration, stop looking. + if (h == hitObject || h.NestedHitObjects.Contains(hitObject)) return canFlourish; }