diff --git a/osu.Game.Modes.Taiko/Beatmaps/TaikoBeatmapConverter.cs b/osu.Game.Modes.Taiko/Beatmaps/TaikoBeatmapConverter.cs index 0606ee4d5a..d00d6ae473 100644 --- a/osu.Game.Modes.Taiko/Beatmaps/TaikoBeatmapConverter.cs +++ b/osu.Game.Modes.Taiko/Beatmaps/TaikoBeatmapConverter.cs @@ -3,6 +3,7 @@ using osu.Game.Beatmaps; using osu.Game.Beatmaps.Legacy; +using osu.Game.Beatmaps.Samples; using osu.Game.Modes.Objects; using osu.Game.Modes.Objects.Types; using osu.Game.Modes.Taiko.Objects; @@ -43,12 +44,15 @@ namespace osu.Game.Modes.Taiko.Beatmaps IHasRepeats repeatsData = original as IHasRepeats; IHasEndTime endTimeData = original as IHasEndTime; + bool isFinisher = (original.Sample.Type & SampleType.Finish) > 0; + if (distanceData != null) { return new DrumRoll { StartTime = original.StartTime, Sample = original.Sample, + IsFinisher = isFinisher, Distance = distanceData.Distance * (repeatsData?.RepeatCount ?? 1) }; @@ -61,6 +65,7 @@ namespace osu.Game.Modes.Taiko.Beatmaps { StartTime = original.StartTime, Sample = original.Sample, + IsFinisher = isFinisher, EndTime = original.StartTime + endTimeData.Duration * bash_convert_factor }; @@ -70,6 +75,7 @@ namespace osu.Game.Modes.Taiko.Beatmaps { StartTime = original.StartTime, Sample = original.Sample, + IsFinisher = isFinisher }; } } diff --git a/osu.Game.Modes.Taiko/Objects/TaikoHitObject.cs b/osu.Game.Modes.Taiko/Objects/TaikoHitObject.cs index 4505065489..a27d842053 100644 --- a/osu.Game.Modes.Taiko/Objects/TaikoHitObject.cs +++ b/osu.Game.Modes.Taiko/Objects/TaikoHitObject.cs @@ -19,6 +19,11 @@ namespace osu.Game.Modes.Taiko.Objects /// public double PreEmpt; + /// + /// Whether this HitObject is a finisher. + /// + public bool IsFinisher; + /// /// Whether this HitObject is in Kiai time. ///