public HarborType[] GetPlayersHarbors(int playerID)
{
HashSet<HarborType> result = new HashSet<HarborType>();
foreach (var h in harbors)
{
var corners = GetAdjacentIntersections(h.Position);
foreach (Intersection pos in corners)
{
Piece curPiece = GetPiece(pos);
if (curPiece != null && curPiece.Player == playerID) result.Add(h.Type);
}
}
return result.ToArray();
}