diff --git a/Content.Server/AlertLevel/AlertLevelComponent.cs b/Content.Server/AlertLevel/AlertLevelComponent.cs index 41664f91d4..f25e8aafc5 100644 --- a/Content.Server/AlertLevel/AlertLevelComponent.cs +++ b/Content.Server/AlertLevel/AlertLevelComponent.cs @@ -29,8 +29,6 @@ public sealed class AlertLevelComponent : Component /// [ViewVariables(VVAccess.ReadWrite)] public bool IsLevelLocked = false; - [ViewVariables] public const float Delay = 30; - [ViewVariables] public float CurrentDelay = 0; [ViewVariables] public bool ActiveDelay; diff --git a/Content.Server/AlertLevel/AlertLevelSystem.cs b/Content.Server/AlertLevel/AlertLevelSystem.cs index a9ca6725ca..975235b937 100644 --- a/Content.Server/AlertLevel/AlertLevelSystem.cs +++ b/Content.Server/AlertLevel/AlertLevelSystem.cs @@ -1,8 +1,10 @@ using System.Linq; using Content.Server.Chat.Systems; using Content.Server.Station.Systems; +using Content.Shared.CCVar; using Content.Shared.PDA; using Robust.Shared.Audio; +using Robust.Shared.Configuration; using Robust.Shared.Prototypes; namespace Content.Server.AlertLevel; @@ -12,6 +14,7 @@ public sealed class AlertLevelSystem : EntitySystem [Dependency] private readonly IPrototypeManager _prototypeManager = default!; [Dependency] private readonly ChatSystem _chatSystem = default!; [Dependency] private readonly StationSystem _stationSystem = default!; + [Dependency] private readonly IConfigurationManager _cfg = default!; // Until stations are a prototype, this is how it's going to have to be. public const string DefaultAlertLevelSet = "stationAlerts"; @@ -138,7 +141,7 @@ public sealed class AlertLevelSystem : EntitySystem return; } - component.CurrentDelay = AlertLevelComponent.Delay; + component.CurrentDelay = _cfg.GetCVar(CCVars.GameAlertLevelChangeDelay); component.ActiveDelay = true; } diff --git a/Content.Shared/CCVar/CCVars.cs b/Content.Shared/CCVar/CCVars.cs index ac5b02b1ad..5318abce32 100644 --- a/Content.Shared/CCVar/CCVars.cs +++ b/Content.Shared/CCVar/CCVars.cs @@ -282,6 +282,12 @@ namespace Content.Shared.CCVar CVarDef.Create("game.round_start_fail_shutdown_count", 5, CVar.SERVERONLY | CVar.SERVER); #endif + /// + /// Delay between station alert level changes. + /// + public static readonly CVarDef GameAlertLevelChangeDelay = + CVarDef.Create("game.alert_level_change_delay", 30, CVar.SERVERONLY); + /* * Discord */