Files
tbd-station-14/Content.Shared/MagicMirror/MagicMirrorComponent.cs
Plykiya 031eb9606c Make magic mirror do-after longer, add popups to notify the target (#30366)
* Make magic mirror do-after longer, add popups to notify the target

* Turns out I do have access to the user

* More detailed popups

* Helmets protecc

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-07-30 12:17:27 +10:00

52 lines
1.6 KiB
C#

using Content.Shared.DoAfter;
using Robust.Shared.Audio;
using Robust.Shared.GameStates;
namespace Content.Shared.MagicMirror;
/// <summary>
/// Allows humanoids to change their appearance mid-round.
/// </summary>
[RegisterComponent, NetworkedComponent, AutoGenerateComponentState]
public sealed partial class MagicMirrorComponent : Component
{
[DataField]
public DoAfterId? DoAfter;
/// <summary>
/// Magic mirror target, used for validating UI messages.
/// </summary>
[DataField, AutoNetworkedField]
public EntityUid? Target;
/// <summary>
/// Do after time to add a new slot, adding hair to a person
/// </summary>
[DataField, ViewVariables(VVAccess.ReadWrite)]
public TimeSpan AddSlotTime = TimeSpan.FromSeconds(7);
/// <summary>
/// Do after time to remove a slot, removing hair from a person
/// </summary>
[DataField, ViewVariables(VVAccess.ReadWrite)]
public TimeSpan RemoveSlotTime = TimeSpan.FromSeconds(7);
/// <summary>
/// Do after time to change a person's hairstyle
/// </summary>
[DataField, ViewVariables(VVAccess.ReadWrite)]
public TimeSpan SelectSlotTime = TimeSpan.FromSeconds(7);
/// <summary>
/// Do after time to change a person's hair color
/// </summary>
[DataField, ViewVariables(VVAccess.ReadWrite)]
public TimeSpan ChangeSlotTime = TimeSpan.FromSeconds(7);
/// <summary>
/// Sound emitted when slots are changed
/// </summary>
[DataField, ViewVariables(VVAccess.ReadWrite)]
public SoundSpecifier? ChangeHairSound = new SoundPathSpecifier("/Audio/Items/scissors.ogg");
}