diff --git a/OpenRA.Mods.RA/Minelayer.cs b/OpenRA.Mods.RA/Minelayer.cs index d8b55daba8..5aba5e273e 100644 --- a/OpenRA.Mods.RA/Minelayer.cs +++ b/OpenRA.Mods.RA/Minelayer.cs @@ -110,8 +110,8 @@ namespace OpenRA.Mods.RA } var underCursor = world.FindUnitsAtMouse(mi.Location) - //.Where(a => a.Info.Traits.Contains()) - .OrderByDescending(a => a.Info.Traits.Contains() ? a.Info.Traits.Get().Priority : int.MinValue) + .OrderByDescending(a => a.Info.Traits.Contains() + ? a.Info.Traits.Get().Priority : int.MinValue) .FirstOrDefault(); if (mi.Button == MouseButton.Right && underCursor == null) @@ -120,13 +120,16 @@ namespace OpenRA.Mods.RA public void Tick(World world) { - if (minelayer.IsDead() || !minelayer.IsInWorld) + if (!minelayer.IsInWorld || minelayer.IsDead()) world.CancelInputMode(); } int2 lastMousePos; public void RenderAfterWorld(World world) { + if (!minelayer.IsInWorld) + return; + var ml = minelayer.Trait(); var movement = minelayer.Trait(); var minefield = GetMinefieldCells(ml.minefieldStart, lastMousePos, minelayer.Info.Traits.Get().MinefieldDepth)