ClockComponent.cs 926 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. using Robust.Shared.GameStates;
  2. using Robust.Shared.Serialization;
  3. namespace Content.Shared.Clock;
  4. [RegisterComponent, NetworkedComponent]
  5. [Access(typeof(SharedClockSystem))]
  6. [AutoGenerateComponentState]
  7. public sealed partial class ClockComponent : Component
  8. {
  9. /// <summary>
  10. /// If not null, this time will be permanently shown.
  11. /// </summary>
  12. [DataField, AutoNetworkedField]
  13. public TimeSpan? StuckTime;
  14. /// <summary>
  15. /// The format in which time is displayed.
  16. /// </summary>
  17. [DataField, AutoNetworkedField]
  18. public ClockType ClockType = ClockType.TwelveHour;
  19. [DataField]
  20. public string HoursBase = "hours_";
  21. [DataField]
  22. public string MinutesBase = "minutes_";
  23. }
  24. [Serializable, NetSerializable]
  25. public enum ClockType : byte
  26. {
  27. TwelveHour,
  28. TwentyFourHour
  29. }
  30. [Serializable, NetSerializable]
  31. public enum ClockVisualLayers : byte
  32. {
  33. HourHand,
  34. MinuteHand
  35. }