mirror of
https://github.com/space-syndicate/space-station-14.git
synced 2026-10-09 18:31:17 +03:00
* Make every EntitySystem partial * Oobs thats for a diff PR * Also oops on that one * Test systems * git are we fr * Update file templates * cleanup empty classes while we are here * forgor --------- Co-authored-by: AJCM-git <ajcm_mail@disroot.org>
34 lines
947 B
C#
34 lines
947 B
C#
using Robust.Shared.Utility;
|
|
|
|
namespace Content.Client.SurveillanceCamera;
|
|
|
|
public sealed partial class SurveillanceCameraMonitorSystem : EntitySystem
|
|
{
|
|
public override void Update(float frameTime)
|
|
{
|
|
var query = EntityQueryEnumerator<ActiveSurveillanceCameraMonitorVisualsComponent>();
|
|
|
|
while (query.MoveNext(out var uid, out var comp))
|
|
{
|
|
comp.TimeLeft -= frameTime;
|
|
|
|
if (comp.TimeLeft <= 0)
|
|
{
|
|
comp.OnFinish?.Invoke();
|
|
|
|
RemCompDeferred<ActiveSurveillanceCameraMonitorVisualsComponent>(uid);
|
|
}
|
|
}
|
|
}
|
|
|
|
public void AddTimer(EntityUid uid, Action onFinish)
|
|
{
|
|
var comp = EnsureComp<ActiveSurveillanceCameraMonitorVisualsComponent>(uid);
|
|
comp.OnFinish = onFinish;
|
|
}
|
|
|
|
public void RemoveTimer(EntityUid uid)
|
|
{
|
|
RemCompDeferred<ActiveSurveillanceCameraMonitorVisualsComponent>(uid);
|
|
}
|
|
}
|