Fix editor blueprints being selectable for too long when hit markers are enabled

Addresses https://github.com/ppy/osu/discussions/24163.
This commit is contained in:
Dean Herbert 2023-07-19 14:52:31 +09:00
parent b9a66ad7b3
commit 4a6a5b174a

View File

@ -22,7 +22,16 @@ namespace osu.Game.Rulesets.Osu.Edit.Blueprints
protected override bool AlwaysShowWhenSelected => true;
protected override bool ShouldBeAlive => base.ShouldBeAlive
|| (DrawableObject is not DrawableSpinner && ShowHitMarkers.Value && editorClock.CurrentTime >= Item.StartTime && editorClock.CurrentTime - Item.GetEndTime() < HitCircleOverlapMarker.FADE_OUT_EXTENSION);
|| (DrawableObject is not DrawableSpinner && ShowHitMarkers.Value && editorClock.CurrentTime >= Item.StartTime
&& editorClock.CurrentTime - Item.GetEndTime() < HitCircleOverlapMarker.FADE_OUT_EXTENSION);
public override bool HandlePositionalInput =>
// Bypass fade out extension from hit markers for input handling purposes.
// This is to match stable, where even when the afterimage hit markers are still visible, objects are not selectable.
//
// Note that we are intentionally overriding HandlePositionalInput here and not ReceivePositionalInputAt
// as individual blueprint implementations override that.
base.ShouldBeAlive;
protected OsuSelectionBlueprint(T hitObject)
: base(hitObject)