EmagSiliconLawComponent.cs 1.0 KB

1234567891011121314151617181920212223242526272829303132
  1. using Content.Shared.Roles;
  2. using Robust.Shared.GameStates;
  3. using Robust.Shared.Prototypes;
  4. using Robust.Shared.Audio;
  5. namespace Content.Shared.Silicons.Laws.Components;
  6. /// <summary>
  7. /// This is used for an entity that grants a special "obey" law when emagged.
  8. /// </summary>
  9. [RegisterComponent, NetworkedComponent, Access(typeof(SharedSiliconLawSystem))]
  10. public sealed partial class EmagSiliconLawComponent : Component
  11. {
  12. /// <summary>
  13. /// The name of the person who emagged this law provider.
  14. /// </summary>
  15. [DataField, ViewVariables(VVAccess.ReadWrite)]
  16. public string? OwnerName;
  17. /// <summary>
  18. /// Does the panel need to be open to EMAG this law provider.
  19. /// </summary>
  20. [DataField, ViewVariables(VVAccess.ReadWrite)]
  21. public bool RequireOpenPanel = true;
  22. /// <summary>
  23. /// How long the borg is stunned when it's emagged. Setting to 0 will disable it.
  24. /// </summary>
  25. [DataField, ViewVariables(VVAccess.ReadWrite)]
  26. public TimeSpan StunTime = TimeSpan.Zero;
  27. }