diff --git a/OpenRA.Mods.Common/Traits/Carryall.cs b/OpenRA.Mods.Common/Traits/Carryall.cs index 76d7075402..55923a34ed 100644 --- a/OpenRA.Mods.Common/Traits/Carryall.cs +++ b/OpenRA.Mods.Common/Traits/Carryall.cs @@ -111,8 +111,13 @@ namespace OpenRA.Mods.Common.Traits { if (State == CarryallState.Carrying) { - if (Carryable.IsInWorld && !Carryable.IsDead) - Carryable.Kill(e.Attacker); + if (!Carryable.IsDead) + { + var positionable = Carryable.Trait(); + positionable.SetPosition(Carryable, self.Location); + Carryable.Kill(e.Attacker); + } + Carryable = null; }