From 2cb18820ea0a2052bde8fcf911f8e06571703116 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bart=C5=82omiej=20Dach?= Date: Tue, 25 Jun 2024 10:07:58 +0200 Subject: [PATCH] Fix incorrect slider judgement positions when classic mod is active Regressed in https://github.com/ppy/osu/pull/27977. Bit ad-hoc but don't see how to fix without just reverting the change. --- .../Objects/Drawables/DrawableOsuJudgement.cs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/osu.Game.Rulesets.Osu/Objects/Drawables/DrawableOsuJudgement.cs b/osu.Game.Rulesets.Osu/Objects/Drawables/DrawableOsuJudgement.cs index 6e252a53e2..0630ecfbb5 100644 --- a/osu.Game.Rulesets.Osu/Objects/Drawables/DrawableOsuJudgement.cs +++ b/osu.Game.Rulesets.Osu/Objects/Drawables/DrawableOsuJudgement.cs @@ -48,10 +48,20 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables if (!positionTransferred && JudgedObject is DrawableOsuHitObject osuObject && JudgedObject.IsInUse) { - Position = osuObject.ToSpaceOfOtherDrawable(osuObject.OriginPosition, Parent!); - Scale = new Vector2(osuObject.HitObject.Scale); + switch (osuObject) + { + case DrawableSlider slider: + Position = slider.TailCircle.ToSpaceOfOtherDrawable(slider.TailCircle.OriginPosition, Parent!); + break; + + default: + Position = osuObject.ToSpaceOfOtherDrawable(osuObject.OriginPosition, Parent!); + break; + } positionTransferred = true; + + Scale = new Vector2(osuObject.HitObject.Scale); } }