Minefield now shows red when out of map bounds and Minelayer now does not get stuck at edge of map
Made it impossible to detect enemy units again Fix whitespace
This commit is contained in:
committed by
abcdefg30
parent
9627776318
commit
fea35923f0
@@ -115,7 +115,8 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
var movement = self.Trait<IPositionable>();
|
||||
|
||||
var minefield = GetMinefieldCells(minefieldStart, cell, Info.MinefieldDepth)
|
||||
.Where(c => movement.CanEnterCell(c, null, BlockedByActor.Immovable) || !self.Owner.Shroud.IsVisible(c))
|
||||
.Where(c => movement.CanEnterCell(c, null, BlockedByActor.Immovable)
|
||||
|| (!self.Owner.Shroud.IsVisible(c) && self.World.Map.Contains(c)))
|
||||
.OrderBy(c => (c - minefieldStart).LengthSquared).ToList();
|
||||
|
||||
self.QueueActivity(order.Queued, new LayMines(self, minefield));
|
||||
@@ -236,7 +237,9 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
foreach (var c in minefield)
|
||||
{
|
||||
var tile = tileOk;
|
||||
if (world.FogObscures(c))
|
||||
if (!world.Map.Contains(c))
|
||||
tile = tileBlocked;
|
||||
else if (world.FogObscures(c))
|
||||
tile = tileUnknown;
|
||||
else if (!movement.CanEnterCell(c, null, BlockedByActor.Immovable) || (mobile != null && !mobile.CanStayInCell(c)))
|
||||
tile = tileBlocked;
|
||||
|
||||
Reference in New Issue
Block a user