using Content.Shared.Radiation.Events; using Robust.Shared.Configuration; using Robust.Shared.Map; namespace Content.Server.Radiation.Systems; public sealed partial class RadiationSystem : EntitySystem { [Dependency] private readonly IMapManager _mapManager = default!; [Dependency] private readonly IConfigurationManager _cfg = default!; [Dependency] private readonly SharedTransformSystem _transform = default!; private float _accumulator; public override void Initialize() { base.Initialize(); SubscribeCvars(); InitRadBlocking(); } public override void Shutdown() { base.Shutdown(); UnsubscribeCvars(); } public override void Update(float frameTime) { base.Update(frameTime); _accumulator += frameTime; if (_accumulator < GridcastUpdateRate) return; UpdateGridcast(); UpdateResistanceDebugOverlay(); _accumulator = 0f; } public void IrradiateEntity(EntityUid uid, float radsPerSecond, float time) { var msg = new OnIrradiatedEvent(time, radsPerSecond); RaiseLocalEvent(uid, msg); } }