From efedb3d7ba949fcb5a640a4a4acf144a5314081f Mon Sep 17 00:00:00 2001 From: wrexbe <81056464+wrexbe@users.noreply.github.com> Date: Wed, 25 May 2022 13:17:56 -0700 Subject: [PATCH] Turn off gravity on remove (#8446) --- .../Gravity/EntitySystems/GravityGeneratorSystem.cs | 7 +++++++ Content.Server/Gravity/EntitySystems/GravitySystem.cs | 6 ++++++ 2 files changed, 13 insertions(+) diff --git a/Content.Server/Gravity/EntitySystems/GravityGeneratorSystem.cs b/Content.Server/Gravity/EntitySystems/GravityGeneratorSystem.cs index 6ede594f76..d1167d8375 100644 --- a/Content.Server/Gravity/EntitySystems/GravityGeneratorSystem.cs +++ b/Content.Server/Gravity/EntitySystems/GravityGeneratorSystem.cs @@ -20,11 +20,18 @@ namespace Content.Server.Gravity.EntitySystems base.Initialize(); SubscribeLocalEvent(OnComponentInitialized); + SubscribeLocalEvent(OnComponentShutdown); SubscribeLocalEvent(OnInteractHand); SubscribeLocalEvent( OnSwitchGenerator); } + private void OnComponentShutdown(EntityUid uid, GravityGeneratorComponent component, ComponentShutdown args) + { + component.GravityActive = false; + UpdateGravityActive(component, true); + } + public override void Update(float frameTime) { base.Update(frameTime); diff --git a/Content.Server/Gravity/EntitySystems/GravitySystem.cs b/Content.Server/Gravity/EntitySystems/GravitySystem.cs index 9f132dd5e0..251fffda98 100644 --- a/Content.Server/Gravity/EntitySystems/GravitySystem.cs +++ b/Content.Server/Gravity/EntitySystems/GravitySystem.cs @@ -10,6 +10,7 @@ namespace Content.Server.Gravity.EntitySystems { base.Initialize(); SubscribeLocalEvent(HandleGravityInitialize); + SubscribeLocalEvent(HandleGravityShutdown); } private void HandleGravityInitialize(EntityUid uid, GravityComponent component, ComponentInit args) @@ -34,6 +35,11 @@ namespace Content.Server.Gravity.EntitySystems RaiseLocalEvent(message); } + private void HandleGravityShutdown(EntityUid uid, GravityComponent component, ComponentShutdown args) + { + DisableGravity(component); + } + public void EnableGravity(GravityComponent comp) { if (comp.Enabled) return;