namespace Content.Server.Speech.Components; /// /// Sends a random message from a list with a provided min/max time. /// [RegisterComponent] public sealed partial class RandomBarkComponent : Component { /// /// Should the message be sent to the chat log? /// [DataField] public bool ChatLog = false; /// /// Minimum time an animal will go without speaking /// [DataField] public int MinTime = 45; /// /// Maximum time an animal will go without speaking /// [DataField] public int MaxTime = 350; /// /// Accumulator for counting time since the last bark /// [DataField] public float BarkAccumulator = 8f; /// /// Multiplier applied to the random time. Good for changing the frequency without having to specify exact values /// [DataField] public float BarkMultiplier = 1f; /// /// Bark type, for use in locales. Locale keys follow the format "bark-{type}-{index between 1 and BarkLocaleCount}". /// [DataField] public string BarkType = "default"; /// /// Number of bark locales. If not specified, then it will be figured out by fetching the locale string /// with the key "bark-{type}-count" and parsing it as an integer. /// [DataField] public int? BarkLocaleCount = null; }