Add IPositionable.CanExistInCell

This is like CanEnterCell, but doesn't take into account conflicting
actors, etc.
This commit is contained in:
Chris Forbes
2018-04-06 20:37:56 -07:00
committed by abcdefg30
parent fba08cd066
commit dddd057e3d
6 changed files with 32 additions and 6 deletions

View File

@@ -687,6 +687,11 @@ namespace OpenRA.Mods.Common.Traits
return Info.GetAvailableSubCell(self.World, self, a, preferredSubCell, ignoreActor, checkTransientActors ? CellConditions.All : CellConditions.None);
}
public bool CanExistInCell(CPos cell)
{
return Info.MovementCostForCell(self.World, cell) != int.MaxValue;
}
public bool CanEnterCell(CPos cell, Actor ignoreActor = null, bool checkTransientActors = true)
{
return Info.CanEnterCell(self.World, self, cell, ignoreActor, checkTransientActors);