diff --git a/OpenRA.Mods.RA/Traits/Mine.cs b/OpenRA.Mods.RA/Traits/Mine.cs index 8cf2e56aaa..3b1ba5488e 100644 --- a/OpenRA.Mods.RA/Traits/Mine.cs +++ b/OpenRA.Mods.RA/Traits/Mine.cs @@ -19,6 +19,7 @@ namespace OpenRA.Mods.RA.Traits { public readonly HashSet CrushClasses = new HashSet(); public readonly bool AvoidFriendly = true; + public readonly bool BlockFriendly = true; public readonly HashSet DetonateClasses = new HashSet(); public object Create(ActorInitializer init) { return new Mine(this); } @@ -52,6 +53,9 @@ namespace OpenRA.Mods.RA.Traits bool ICrushable.CrushableBy(Actor self, Actor crusher, HashSet crushClasses) { + if (info.BlockFriendly && !crusher.Info.HasTraitInfo() && self.Owner.Stances[crusher.Owner] == Stance.Ally) + return false; + return info.CrushClasses.Overlaps(crushClasses); } }