MassHallucinationsRuleComponent.cs 1.0 KB

123456789101112131415161718192021222324252627282930
  1. using Content.Server.StationEvents.Events;
  2. using Robust.Shared.Audio;
  3. using Robust.Shared.Collections;
  4. namespace Content.Server.StationEvents.Components;
  5. [RegisterComponent, Access(typeof(MassHallucinationsRule))]
  6. public sealed partial class MassHallucinationsRuleComponent : Component
  7. {
  8. /// <summary>
  9. /// The maximum time between incidents in seconds
  10. /// </summary>
  11. [DataField("maxTimeBetweenIncidents", required: true), ViewVariables(VVAccess.ReadWrite)]
  12. public float MaxTimeBetweenIncidents;
  13. /// <summary>
  14. /// The minimum time between incidents in seconds
  15. /// </summary>
  16. [DataField("minTimeBetweenIncidents", required: true), ViewVariables(VVAccess.ReadWrite)]
  17. public float MinTimeBetweenIncidents;
  18. [DataField("maxSoundDistance", required: true), ViewVariables(VVAccess.ReadWrite)]
  19. public float MaxSoundDistance;
  20. [DataField("sounds", required: true)]
  21. public SoundSpecifier Sounds = default!;
  22. [DataField, ViewVariables(VVAccess.ReadOnly)]
  23. public List<EntityUid> AffectedEntities = new();
  24. }