diff --git a/Content.Shared/Hands/EntitySystems/SharedHandsSystem.Drop.cs b/Content.Shared/Hands/EntitySystems/SharedHandsSystem.Drop.cs index e071cdc693..7b169b5d0a 100644 --- a/Content.Shared/Hands/EntitySystems/SharedHandsSystem.Drop.cs +++ b/Content.Shared/Hands/EntitySystems/SharedHandsSystem.Drop.cs @@ -134,8 +134,10 @@ public abstract partial class SharedHandsSystem return true; } + var (itemPos, itemRot) = TransformSystem.GetWorldPositionRotation(entity); + var origin = new MapCoordinates(itemPos, itemXform.MapID); var target = targetDropLocation.Value.ToMap(EntityManager, TransformSystem); - TransformSystem.SetWorldPosition(itemXform, GetFinalDropCoordinates(uid, userXform.MapPosition, target)); + TransformSystem.SetWorldPositionRotation(entity, GetFinalDropCoordinates(uid, origin, target), itemRot); return true; } diff --git a/Content.Shared/Storage/EntitySystems/DumpableSystem.cs b/Content.Shared/Storage/EntitySystems/DumpableSystem.cs index 8a8b636a67..91acde47e1 100644 --- a/Content.Shared/Storage/EntitySystems/DumpableSystem.cs +++ b/Content.Shared/Storage/EntitySystems/DumpableSystem.cs @@ -159,11 +159,11 @@ public sealed class DumpableSystem : EntitySystem { dumped = true; - var targetPos = _transformSystem.GetWorldPosition(args.Args.Target.Value); + var (targetPos, targetRot) = _transformSystem.GetWorldPositionRotation(args.Args.Target.Value); foreach (var entity in dumpQueue) { - _transformSystem.SetWorldPosition(entity, targetPos + _random.NextVector2Box() / 4); + _transformSystem.SetWorldPositionRotation(entity, targetPos + _random.NextVector2Box() / 4, targetRot); } } else