/// <summary> /// A Gaul can move twice if it crosses a Plain /// Cannot cross Water /// </summary> /// <param name="destination"></param> /// <returns></returns> public override bool CheckMove(ITile destination) { if (!destination.IsAdjacent(this.Position) || destination.Type == TileType.Water) return false; return base.CheckMove(destination); ; }
/// <summary> /// A Dwarf can move from a Mountain to any other Mountain /// Cannot cross Water /// </summary> /// <param name="destination"></param> /// <returns></returns> public override bool CheckMove(ITile destination) { bool mountainTravel = destination.Type == TileType.Mountain && this.Position.Type == TileType.Mountain; if (!destination.IsAdjacent(this.Position) || destination.Type == TileType.Water) { if (!mountainTravel) return false; } return base.CheckMove(destination); ; }
public override bool CheckMove(ITile destination) { if (!destination.IsAdjacent(this.Position)) return false; return base.CheckMove(destination); }