diff --git a/Content.Shared/Pulling/Components/SharedPullableComponent.cs b/Content.Shared/Pulling/Components/SharedPullableComponent.cs index e7b87b8c53..c32909e896 100644 --- a/Content.Shared/Pulling/Components/SharedPullableComponent.cs +++ b/Content.Shared/Pulling/Components/SharedPullableComponent.cs @@ -47,6 +47,7 @@ namespace Content.Shared.Pulling.Components } var eventBus = Owner.EntityManager.EventBus; + // TODO: JESUS // New value. Abandon being pulled by any existing object. if (_puller != null) @@ -54,6 +55,11 @@ namespace Content.Shared.Pulling.Components var oldPuller = _puller; var oldPullerPhysics = PullerPhysics; + if (_puller.TryGetComponent(out SharedPullerComponent? puller)) + { + puller.Pulling = null; + } + _puller = null; Dirty(); PullerPhysics = null; @@ -67,6 +73,7 @@ namespace Content.Shared.Pulling.Components _physics.WakeBody(); } + // else-branch warning is handled below }