Files
tbd-station-14/Content.Server/Solar/EntitySystems/PowerSolarControlConsoleSystem.cs
2021-06-09 22:19:39 +02:00

33 lines
942 B
C#

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