diff --git a/OpenRA.Mods.RA/Cargo.cs b/OpenRA.Mods.RA/Cargo.cs index 967c8350ca..0ba8ecc78f 100644 --- a/OpenRA.Mods.RA/Cargo.cs +++ b/OpenRA.Mods.RA/Cargo.cs @@ -29,7 +29,7 @@ namespace OpenRA.Mods.RA public object Create(ActorInitializer init) { return new Cargo(init, this); } } - public class Cargo : IPips, IIssueOrder, IResolveOrder, IOrderVoice, INotifyKilled, INotifyCapture, ITick, INotifySold, IDisableMove + public class Cargo : IPips, IIssueOrder, IResolveOrder, IOrderVoice, INotifyKilled, INotifyCapture, INotifyAddedToWorld, ITick, INotifySold, IDisableMove { public readonly CargoInfo Info; readonly Actor self; @@ -256,6 +256,13 @@ namespace OpenRA.Mods.RA }); } + public void AddedToWorld(Actor self) + { + // Force location update to avoid issues when initial spawn is outside map + currentCell = self.Location; + CurrentAdjacentCells = GetAdjacentCells(); + } + bool initialized; public void Tick(Actor self) {