using RhythmBase.Components; namespace RhythmBase.Events { /// /// Represents a text explosion event in a room. /// public class TextExplosion : BaseEvent, IRoomEvent { /// /// Initializes a new instance of the class. /// public TextExplosion() { Rooms = new RDRoom(false, new byte[1]); Color = new PaletteColor(false); Type = EventType.TextExplosion; Tab = Tabs.Actions; } /// /// Gets or sets the rooms associated with the text explosion. /// public RDRoom Rooms { get; set; } /// /// Gets or sets the color of the text explosion. /// public PaletteColor Color { get; set; } /// /// Gets or sets the text to be displayed in the explosion. /// public string Text { get; set; } = ""; /// /// Gets or sets the direction of the text explosion. /// public Directions Direction { get; set; } /// /// Gets or sets the mode of the text explosion. /// public Modes Mode { get; set; } /// /// Gets the type of the event. /// public override EventType Type { get; } /// /// Gets the tab associated with the event. /// public override Tabs Tab { get; } /// /// Returns a string that represents the current object. /// /// A string that represents the current object. public override string ToString() => base.ToString() + string.Format(" {0}", Text); /// /// Specifies the direction of the text explosion. /// public enum Directions { /// /// The text explodes to the left. /// Left, /// /// The text explodes to the right. /// Right } /// /// Specifies the mode of the text explosion. /// public enum Modes { /// /// The text explosion uses one color. /// OneColor, /// /// The text explosion uses random colors. /// Random } } }