diff --git a/Content.Server/Disposal/Unit/EntitySystems/DisposableSystem.cs b/Content.Server/Disposal/Unit/EntitySystems/DisposableSystem.cs index e7c83c8ac6..bcf240df53 100644 --- a/Content.Server/Disposal/Unit/EntitySystems/DisposableSystem.cs +++ b/Content.Server/Disposal/Unit/EntitySystems/DisposableSystem.cs @@ -137,12 +137,13 @@ public void ExitDisposals(EntityUid uid, DisposalHolderComponent? holder = null, else { _xformSystem.AttachToGridOrMap(entity, xform); + var direction = holder.CurrentDirection == Direction.Invalid ? holder.PreviousDirection : holder.CurrentDirection; - if (holder.PreviousDirection != Direction.Invalid && _xformQuery.TryGetComponent(xform.ParentUid, out var parentXform)) + if (direction != Direction.Invalid && _xformQuery.TryGetComponent(gridUid, out var gridXform)) { - var direction = holder.PreviousDirection.ToAngle(); - direction += _xformSystem.GetWorldRotation(parentXform); - _throwing.TryThrow(entity, direction.ToWorldVec() * 3f, 10f); + var directionAngle = direction.ToAngle(); + directionAngle += _xformSystem.GetWorldRotation(gridXform); + _throwing.TryThrow(entity, directionAngle.ToWorldVec() * 3f, 10f); } } } diff --git a/RobustToolbox b/RobustToolbox index 32bca7cfd4..92b0e7f1a8 160000 --- a/RobustToolbox +++ b/RobustToolbox @@ -1 +1 @@ -Subproject commit 32bca7cfd417edcad9a60c2b1703eba8675f56af +Subproject commit 92b0e7f1a853979a1361ed24d2fb5ffc11f43f66