2019-01-24 16:43:03 +08:00
|
|
|
|
// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
|
|
|
|
|
// See the LICENCE file in the repository root for full licence text.
|
2018-04-13 17:19:50 +08:00
|
|
|
|
|
2018-08-02 15:09:04 +08:00
|
|
|
|
using osu.Game.Rulesets.Judgements;
|
2019-09-06 14:24:00 +08:00
|
|
|
|
using osu.Game.Rulesets.Scoring;
|
2018-08-02 15:09:04 +08:00
|
|
|
|
using osu.Game.Rulesets.Taiko.Judgements;
|
|
|
|
|
|
2017-04-18 15:05:58 +08:00
|
|
|
|
namespace osu.Game.Rulesets.Taiko.Objects
|
2017-03-17 12:56:14 +08:00
|
|
|
|
{
|
2020-12-15 04:46:02 +08:00
|
|
|
|
public class DrumRollTick : TaikoStrongableHitObject
|
2017-03-17 12:56:14 +08:00
|
|
|
|
{
|
2023-06-13 01:33:22 +08:00
|
|
|
|
public readonly DrumRoll Parent;
|
|
|
|
|
|
2017-03-17 12:56:14 +08:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// Whether this is the first (initial) tick of the slider.
|
|
|
|
|
/// </summary>
|
|
|
|
|
public bool FirstTick;
|
2018-04-13 17:19:50 +08:00
|
|
|
|
|
2017-03-17 12:56:14 +08:00
|
|
|
|
/// <summary>
|
2017-04-03 14:32:38 +08:00
|
|
|
|
/// The length (in milliseconds) between this tick and the next.
|
2017-03-17 12:56:14 +08:00
|
|
|
|
/// <para>Half of this value is the hit window of the tick.</para>
|
|
|
|
|
/// </summary>
|
2017-04-03 14:32:38 +08:00
|
|
|
|
public double TickSpacing;
|
2018-04-13 17:19:50 +08:00
|
|
|
|
|
2017-03-28 08:50:43 +08:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The time allowed to hit this tick.
|
|
|
|
|
/// </summary>
|
2017-04-03 14:32:38 +08:00
|
|
|
|
public double HitWindow => TickSpacing / 2;
|
2018-08-02 15:09:04 +08:00
|
|
|
|
|
2023-06-13 01:33:22 +08:00
|
|
|
|
public DrumRollTick(DrumRoll parent)
|
|
|
|
|
{
|
|
|
|
|
Parent = parent;
|
|
|
|
|
}
|
|
|
|
|
|
2018-08-06 10:50:18 +08:00
|
|
|
|
public override Judgement CreateJudgement() => new TaikoDrumRollTickJudgement();
|
2019-09-02 15:10:30 +08:00
|
|
|
|
|
2019-10-09 18:08:31 +08:00
|
|
|
|
protected override HitWindows CreateHitWindows() => HitWindows.Empty;
|
2020-12-13 19:59:46 +08:00
|
|
|
|
|
2023-01-19 19:53:35 +08:00
|
|
|
|
public override double MaximumJudgementOffset => HitWindow;
|
|
|
|
|
|
2023-05-23 18:07:54 +08:00
|
|
|
|
protected override StrongNestedHitObject CreateStrongNestedHit(double startTime) => new StrongNestedHit(this)
|
2023-05-22 00:28:30 +08:00
|
|
|
|
{
|
|
|
|
|
StartTime = startTime,
|
|
|
|
|
Samples = Samples
|
|
|
|
|
};
|
2020-12-13 19:59:46 +08:00
|
|
|
|
|
|
|
|
|
public class StrongNestedHit : StrongNestedHitObject
|
|
|
|
|
{
|
2023-05-09 18:30:54 +08:00
|
|
|
|
public StrongNestedHit(TaikoHitObject parent)
|
|
|
|
|
: base(parent)
|
|
|
|
|
{
|
|
|
|
|
}
|
2020-12-13 19:59:46 +08:00
|
|
|
|
}
|
2017-03-17 12:56:14 +08:00
|
|
|
|
}
|
2018-01-05 19:21:19 +08:00
|
|
|
|
}
|