using Newtonsoft.Json;
namespace RhythmBase.Events
{
///
/// Represents an event that says "Ready, Get Set, Go" with various voice sources and phrases.
///
public class SayReadyGetSetGo : BaseEvent
{
///
/// Initializes a new instance of the class.
///
public SayReadyGetSetGo()
{
Type = EventType.SayReadyGetSetGo;
Tab = Tabs.Sounds;
}
///
/// Gets or sets the phrase to say.
///
public Words PhraseToSay { get; set; }
///
/// Gets or sets the voice source.
///
public VoiceSources VoiceSource { get; set; }
///
/// Gets or sets the tick value.
///
public float Tick { get; set; }
///
/// Gets or sets the volume.
///
public uint Volume { get; set; }
///
/// Gets the event type.
///
public override EventType Type { get; }
///
/// Gets the tab.
///
public override Tabs Tab { get; }
///
/// Gets a value indicating whether the phrase is splitable.
///
[JsonIgnore]
public bool Splitable
{
get
{
return PhraseToSay == Words.SayReaDyGetSetGoNew || PhraseToSay == Words.SayGetSetGo || PhraseToSay == Words.SayReaDyGetSetOne || PhraseToSay == Words.SayGetSetOne || PhraseToSay == Words.SayReadyGetSetGo;
}
}
///
/// Returns a string that represents the current object.
///
/// A string that represents the current object.
public override string ToString() => base.ToString() + string.Format(" {0}: {1}", VoiceSource, PhraseToSay);
///
/// Represents the phrases that can be said.
///
public enum Words
{
///
/// Represents the phrase "Ready, Get Set, Go New".
///
SayReaDyGetSetGoNew,
///
/// Represents the phrase "Get Set, Go".
///
SayGetSetGo,
///
/// Represents the phrase "Ready, Get Set, One".
///
SayReaDyGetSetOne,
///
/// Represents the phrase "Get Set, One".
///
SayGetSetOne,
///
/// Represents the phrase "Rea".
///
JustSayRea,
///
/// Represents the phrase "Dy".
///
JustSayDy,
///
/// Represents the phrase "Get".
///
JustSayGet,
///
/// Represents the phrase "Set".
///
JustSaySet,
///
/// Represents the phrase "And".
///
JustSayAnd,
///
/// Represents the phrase "Go".
///
JustSayGo,
///
/// Represents the phrase "Stop".
///
JustSayStop,
///
/// Represents the phrase "And Stop".
///
JustSayAndStop,
///
/// Represents the count "1".
///
Count1,
///
/// Represents the count "2".
///
Count2,
///
/// Represents the count "3".
///
Count3,
///
/// Represents the count "4".
///
Count4,
///
/// Represents the count "5".
///
Count5,
///
/// Represents the count "6".
///
Count6,
///
/// Represents the count "7".
///
Count7,
///
/// Represents the count "8".
///
Count8,
///
/// Represents the count "9".
///
Count9,
///
/// Represents the count "10".
///
Count10,
///
/// Represents the phrase "Ready, Get Set, Go".
///
SayReadyGetSetGo,
///
/// Represents the phrase "Ready".
///
JustSayReady
}
///
/// Represents the sources of the voice.
///
public enum VoiceSources
{
///
/// Represents the voice source "Nurse".
///
Nurse,
///
/// Represents the voice source "Nurse Tired".
///
NurseTired,
///
/// Represents the voice source "Nurse Swing".
///
NurseSwing,
///
/// Represents the voice source "Nurse Swing Calm".
///
NurseSwingCalm,
///
/// Represents the voice source "Ian Excited".
///
IanExcited,
///
/// Represents the voice source "Ian Calm".
///
IanCalm,
///
/// Represents the voice source "Ian Slow".
///
IanSlow,
///
/// Represents the voice source "None Bottom".
///
NoneBottom,
///
/// Represents the voice source "None Top".
///
NoneTop
}
}
}