Remove Order.TargetLocation from Minelayer.
This commit is contained in:
@@ -89,22 +89,24 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
|
||||
void IResolveOrder.ResolveOrder(Actor self, Order order)
|
||||
{
|
||||
if (order.OrderString == "BeginMinefield")
|
||||
minefieldStart = order.TargetLocation;
|
||||
if (order.OrderString != "BeginMinefield" && order.OrderString != "PlaceMinefield" && order.OrderString != "PlaceMine")
|
||||
return;
|
||||
|
||||
if (order.OrderString == "PlaceMine")
|
||||
var cell = self.World.Map.CellContaining(order.Target.CenterPosition);
|
||||
if (order.OrderString == "BeginMinefield")
|
||||
minefieldStart = cell;
|
||||
else if (order.OrderString == "PlaceMine")
|
||||
{
|
||||
minefieldStart = order.TargetLocation;
|
||||
Minefield = new CPos[] { order.TargetLocation };
|
||||
minefieldStart = cell;
|
||||
Minefield = new[] { cell };
|
||||
self.CancelActivity();
|
||||
self.QueueActivity(new LayMines(self));
|
||||
}
|
||||
|
||||
if (order.OrderString == "PlaceMinefield")
|
||||
else if (order.OrderString == "PlaceMinefield")
|
||||
{
|
||||
var movement = self.Trait<IPositionable>();
|
||||
|
||||
Minefield = GetMinefieldCells(minefieldStart, order.TargetLocation, info.MinefieldDepth)
|
||||
Minefield = GetMinefieldCells(minefieldStart, cell, info.MinefieldDepth)
|
||||
.Where(p => movement.CanEnterCell(p, null, false)).ToArray();
|
||||
|
||||
if (Minefield.Length == 1 && Minefield[0] != self.Location)
|
||||
|
||||
Reference in New Issue
Block a user