using Robust.Shared.Prototypes;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
namespace Content.Shared.Chat.Prototypes;
[Prototype]
public sealed partial class AutoEmotePrototype : IPrototype
{
///
[IdDataField]
public string ID { get; private set; } = default!;
///
/// The ID of the emote prototype.
///
[DataField("emote", required: true, customTypeSerializer: typeof(PrototypeIdSerializer))]
public string EmoteId = String.Empty;
///
/// How often an attempt at the emote will be made.
///
[DataField("interval", required: true)]
public TimeSpan Interval;
///
/// Probability of performing the emote each interval.
///
[DataField("chance")]
public float Chance = 1;
///
/// Also send the emote in chat.
///
[DataField("withChat")]
public bool WithChat = true;
///
/// Hide the chat message from the chat window, only showing the popup.
/// This does nothing if WithChat is false.
///
[DataField("hiddenFromChatWindow")]
public bool HiddenFromChatWindow = false;
}