diff --git a/OpenRA.Mods.RA/Cargo.cs b/OpenRA.Mods.RA/Cargo.cs index 40a9fd4921..bac43a56b2 100644 --- a/OpenRA.Mods.RA/Cargo.cs +++ b/OpenRA.Mods.RA/Cargo.cs @@ -9,6 +9,7 @@ #endregion using System.Collections.Generic; +using System.Linq; using OpenRA.Mods.RA.Activities; using OpenRA.Traits; @@ -36,8 +37,13 @@ namespace OpenRA.Mods.RA if (mi.Button == MouseButton.Right && underCursor == self) return new Order("Unload", self); - if( mi.Button == MouseButton.Right && underCursor != null && underCursor.Owner == self.Owner ) - return new Order("EnterTransport", underCursor, self); + if (mi.Button == MouseButton.Right && underCursor != null && underCursor.Owner == self.Owner) + { + var pi = underCursor.Info.Traits.GetOrDefault(); + var ci = self.Info.Traits.Get(); + if (pi != null && ci.Types.Contains(pi.CargoType)) + return new Order("EnterTransport", underCursor, self); + } return null; }