From af0e0598e82308318c984dacd382750748c301fc Mon Sep 17 00:00:00 2001 From: ScarKy0 <106310278+ScarKy0@users.noreply.github.com> Date: Sat, 17 May 2025 16:38:49 +0200 Subject: [PATCH] TemperatureProtection now works directly on entities (#37544) * init * review * review --- .../Temperature/Systems/TemperatureSystem.cs | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/Content.Server/Temperature/Systems/TemperatureSystem.cs b/Content.Server/Temperature/Systems/TemperatureSystem.cs index e46b18a265..d2f6baf6f9 100644 --- a/Content.Server/Temperature/Systems/TemperatureSystem.cs +++ b/Content.Server/Temperature/Systems/TemperatureSystem.cs @@ -45,8 +45,7 @@ public sealed class TemperatureSystem : EntitySystem SubscribeLocalEvent(OnAtmosExposedUpdate); SubscribeLocalEvent(OnRejuvenate); SubscribeLocalEvent(ServerAlert); - SubscribeLocalEvent>( - OnTemperatureChangeAttempt); + Subs.SubscribeWithRelay(OnTemperatureChangeAttempt, held: false); SubscribeLocalEvent(OnInit); @@ -296,17 +295,16 @@ public sealed class TemperatureSystem : EntitySystem } } - private void OnTemperatureChangeAttempt(EntityUid uid, TemperatureProtectionComponent component, - InventoryRelayedEvent args) + private void OnTemperatureChangeAttempt(EntityUid uid, TemperatureProtectionComponent component, ModifyChangedTemperatureEvent args) { - var coefficient = args.Args.TemperatureDelta < 0 + var coefficient = args.TemperatureDelta < 0 ? component.CoolingCoefficient : component.HeatingCoefficient; var ev = new GetTemperatureProtectionEvent(coefficient); RaiseLocalEvent(uid, ref ev); - args.Args.TemperatureDelta *= ev.Coefficient; + args.TemperatureDelta *= ev.Coefficient; } private void ChangeTemperatureOnCollide(Entity ent, ref ProjectileHitEvent args) -- 2.51.2