using Content.Client.Trigger.Systems;
using Robust.Client.Animations;
using Robust.Shared.Audio;
namespace Content.Client.Trigger.Components;
[RegisterComponent]
[Access(typeof(TimerTriggerVisualizerSystem))]
public sealed partial class TimerTriggerVisualsComponent : Component
{
///
/// The key used to index the priming animation.
///
[ViewVariables]
public const string AnimationKey = "priming_animation";
///
/// The RSI state used while the device has not been primed.
///
[DataField]
public string UnprimedSprite = "icon";
///
/// The RSI state used when the device is primed.
/// Not VVWrite-able because it's only used at component init to construct the priming animation.
///
[DataField]
public string PrimingSprite = "primed";
///
/// The sound played when the device is primed.
/// Not VVWrite-able because it's only used at component init to construct the priming animation.
///
[DataField, ViewVariables]
public SoundSpecifier? PrimingSound;
///
/// The actual priming animation.
/// Constructed at component init from the sprite and sound.
///
[ViewVariables]
public Animation PrimingAnimation = default!;
}