/// <summary>TODO</summary> /// <param name="this"></param> /// <param name="directions"></param> /// <returns></returns> public static IEnumerable <NeighbourHex> GetNeighbourHexes(this IHex @this, HexsideFlags directions) { return(from n in @this.GetNeighbourHexes() where directions.HasFlag(n.HexsideEntry.Direction()) && n.Hex.IsOnboard() select n); }
///<summary>Returns set of hexes at direction(s) specified by <c>hexsides</c>, as IEnumerable.</summary> public IEnumerable <NeighbourCoords> GetNeighbours(HexsideFlags hexsides) { return(GetNeighbours().Where(n => hexsides.HasFlag(n.Hexside))); }