Fix #65; allow aircraft to receive move orders over buildings

This commit is contained in:
Paul Chote
2010-09-13 03:28:00 +12:00
parent 8286dba919
commit 10a1f7ec1e
2 changed files with 7 additions and 12 deletions

View File

@@ -49,14 +49,13 @@ namespace OpenRA.Mods.RA
{ {
if (mi.Button == MouseButton.Left) return null; if (mi.Button == MouseButton.Left) return null;
if (underCursor == null) if (underCursor != null && AircraftCanEnter(self, underCursor)
if (self.TraitOrDefault<IMove>().CanEnterCell(xy))
return new Order("Move", self, xy);
if (AircraftCanEnter(self, underCursor)
&& underCursor.Owner == self.Owner) && underCursor.Owner == self.Owner)
return new Order("Enter", self, underCursor); return new Order("Enter", self, underCursor);
if (self.TraitOrDefault<IMove>().CanEnterCell(xy))
return new Order("Move", self, xy);
return null; return null;
} }

View File

@@ -55,15 +55,11 @@ namespace OpenRA.Mods.RA
public Order IssueOrder(Actor self, int2 xy, MouseInput mi, Actor underCursor) public Order IssueOrder(Actor self, int2 xy, MouseInput mi, Actor underCursor)
{ {
if (mi.Button == MouseButton.Left) return null; if (mi.Button == MouseButton.Left) return null;
if (underCursor != null && AircraftCanEnter(self, underCursor)
if (underCursor == null)
return new Order("Move", self, xy);
if (AircraftCanEnter(self, underCursor)
&& underCursor.Owner == self.Owner) && underCursor.Owner == self.Owner)
return new Order("Enter", self, underCursor); return new Order("Enter", self, underCursor);
return null; return new Order("Move", self, xy);
} }
public string CursorForOrder(Actor self, Order order) public string CursorForOrder(Actor self, Order order)