namespace RhythmBase.Components.Conditions
{
///
/// Represents a condition based on the last hit in a rhythm game.
///
public class LastHitCondition : BaseConditional
{
///
/// Initializes a new instance of the class.
///
public LastHitCondition()
{
Type = ConditionType.LastHit;
}
///
/// Gets the type of the condition.
///
public override ConditionType Type { get; }
///
/// Gets or sets the row where the last hit occurred.
///
public sbyte Row { get; set; }
///
/// Gets or sets the result that determines under what condition the event will be executed.
///
public HitResult Result { get; set; }
///
/// Defines the possible results of a hit.
///
[Flags]
public enum HitResult
{
///
/// The hit was perfect.
///
Perfect = 0,
///
/// The hit was slightly early.
///
SlightlyEarly = 2,
///
/// The hit was slightly late.
///
SlightlyLate = 3,
///
/// The hit was very early.
///
VeryEarly = 4,
///
/// The hit was very late.
///
VeryLate = 5,
///
/// The hit was either slightly early or slightly late.
///
AnyEarlyOrLate = 7,
///
/// The hit was missed.
///
Missed = 15
}
}
}