using Content.Shared.Body;
using Content.Shared.Humanoid;
using Robust.Shared.GameStates;
using Robust.Shared.Prototypes;
namespace Content.Shared.Wagging;
///
/// An emoting wag for markings.
///
[RegisterComponent, NetworkedComponent, AutoGenerateComponentState(fieldDeltas: true)]
[Access(typeof(WaggingSystem))]
public sealed partial class WaggingComponent : Component
{
///
/// The prototype id of the wagging action.
///
[DataField, AutoNetworkedField]
public EntProtoId Action = "ActionToggleWagging";
///
/// Reference to the action entity.
///
[DataField, AutoNetworkedField]
public EntityUid? ActionEntity;
///
/// The visual layer of the tail marking.
///
[DataField, AutoNetworkedField]
public HumanoidVisualLayers Layer = HumanoidVisualLayers.Tail;
///
/// The organ category to which the tail is attached.
///
[DataField, AutoNetworkedField]
public ProtoId Organ = "Torso";
///
/// The suffix to add to get the animated marking.
///
[DataField, AutoNetworkedField]
public string Suffix = "Animated";
///
/// Whether the entity is currently wagging.
///
[DataField, AutoNetworkedField]
public bool Wagging = false;
}