// Copyright (c) ppy Pty Ltd . Licensed under the MIT Licence. // See the LICENCE file in the repository root for full licence text. using osu.Game.Rulesets.Difficulty.Preprocessing; using osu.Game.Rulesets.Taiko.Objects; using System.Collections.Generic; namespace osu.Game.Rulesets.Taiko.Difficulty.Preprocessing.Colour.Data { /// /// Encode colour information for a sequence of s. Consecutive s /// of the same are encoded within the same . /// public class MonoStreak { /// /// List of s that are encoded within this . /// public List HitObjects { get; private set; } = new List(); /// /// The parent that contains this /// public AlternatingMonoPattern Parent = null!; /// /// Index of this within it's parent /// public int Index; /// /// The first in this . /// public TaikoDifficultyHitObject FirstHitObject => HitObjects[0]; /// /// The last in this . /// public TaikoDifficultyHitObject LastHitObject => HitObjects[^1]; /// /// The hit type of all objects encoded within this /// public HitType? HitType => (HitObjects[0].BaseObject as Hit)?.Type; /// /// How long the mono pattern encoded within is /// public int RunLength => HitObjects.Count; } }