RadioChannelPrototype.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. using Robust.Shared.Prototypes;
  2. namespace Content.Shared.Radio;
  3. [Prototype]
  4. public sealed partial class RadioChannelPrototype : IPrototype
  5. {
  6. /// <summary>
  7. /// Human-readable name for the channel.
  8. /// </summary>
  9. [DataField("name")]
  10. public LocId Name { get; private set; } = string.Empty;
  11. [ViewVariables(VVAccess.ReadOnly)]
  12. public string LocalizedName => Loc.GetString(Name);
  13. /// <summary>
  14. /// Single-character prefix to determine what channel a message should be sent to.
  15. /// </summary>
  16. [DataField("keycode")]
  17. public char KeyCode { get; private set; } = '\0';
  18. [DataField("frequency")]
  19. public int Frequency { get; private set; } = 0;
  20. [DataField("color")]
  21. public Color Color { get; private set; } = Color.Lime;
  22. [IdDataField, ViewVariables]
  23. public string ID { get; private set; } = default!;
  24. /// <summary>
  25. /// If channel is long range it doesn't require telecommunication server
  26. /// and messages can be sent across different stations
  27. /// </summary>
  28. [DataField("longRange"), ViewVariables]
  29. public bool LongRange = false;
  30. }