#nullable enable using Content.Server.GameObjects.Components.Power.PowerNetComponents; using JetBrains.Annotations; using Robust.Shared.GameObjects.Systems; namespace Content.Server.GameObjects.EntitySystems { /// /// Responsible for updating solar control consoles. /// [UsedImplicitly] internal sealed class PowerSolarControlConsoleSystem : EntitySystem { /// /// Timer used to avoid updating the UI state every frame (which would be overkill) /// private float _updateTimer; public override void Update(float frameTime) { _updateTimer += frameTime; if (_updateTimer >= 1) { _updateTimer -= 1; foreach (var component in ComponentManager.EntityQuery(true)) { component.UpdateUIState(); } } } } }