using Content.Shared.Roles; using Robust.Shared.Prototypes; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom; namespace Content.Server.GameTicking.Rules.Components; /// /// Component for the RevolutionaryRuleSystem that stores info about winning/losing, player counts required for starting, as well as prototypes for Revolutionaries and their gear. /// [RegisterComponent, Access(typeof(RevolutionaryRuleSystem))] public sealed partial class RevolutionaryRuleComponent : Component { /// /// When the round will if all the command are dead (Incase they are in space) /// [DataField(customTypeSerializer: typeof(TimeOffsetSerializer))] public TimeSpan CommandCheck; /// /// The amount of time between each check for command check. /// [DataField] public TimeSpan TimerWait = TimeSpan.FromSeconds(20); /// /// The time it takes after the last head is killed for the shuttle to arrive. /// [DataField, ViewVariables(VVAccess.ReadWrite)] public TimeSpan ShuttleCallTime = TimeSpan.FromMinutes(5); // WWDP edit /// /// Announcement sender if the Revolution wins. /// [DataField] public string RoundEndTextSender = "comms-console-announcement-title-revolution"; /// /// Text to announce if the Revolution wins. /// [DataField] public string RoundEndTextShuttleCall = "revolution-win-announcement-shuttle-call"; /// /// Text to announce if the Revolution wins. Used if shuttle is already called /// [DataField] public string RoundEndTextAnnouncement = "revolution-win-announcement"; // WWDP edit end }