diff --git a/OpenRA.Mods.RA/Reservable.cs b/OpenRA.Mods.RA/Reservable.cs index a6ac5707d2..f78a47e186 100644 --- a/OpenRA.Mods.RA/Reservable.cs +++ b/OpenRA.Mods.RA/Reservable.cs @@ -11,8 +11,6 @@ using System; using OpenRA.Traits; -// TODO: strip out this mechanism - it doesnt really work. - namespace OpenRA.Mods.RA { class ReservableInfo : TraitInfo { } @@ -26,7 +24,8 @@ namespace OpenRA.Mods.RA if (reservedFor == null) return; /* nothing to do */ - if (reservedFor.IsDead()) reservedFor = null; /* not likely to arrive now. */ + if (reservedFor.IsDead() || !reservedFor.IsInWorld) + reservedFor = null; /* not likely to arrive now. */ } public IDisposable Reserve(Actor forActor)