void CreateNeighboursForItem2(GridItem item) { int x = (int)item.GetGridPos().x; int y = (int)item.GetGridPos().y; if (y - 2 >= 0 && gridItems[x, y - 2] != null) { item.AddNeighbour(gridItems [x, y - 2]); } if (x + 1 < gridItems.GetLength(0) && y - 1 >= 0 && gridItems[x + 1, y - 1] != null) { item.AddNeighbour(gridItems [x + 1, y - 1]); } if (x + 1 < gridItems.GetLength(0) && y + 1 < gridItems.GetLength(1) && gridItems[x + 1, y + 1] != null) { item.AddNeighbour(gridItems [x + 1, y + 1]); } if (y + 2 < gridItems.GetLength(1) && gridItems[x, y + 2] != null) { item.AddNeighbour(gridItems [x, y + 2]); } if (y + 1 < gridItems.GetLength(1) && gridItems[x, y + 1] != null) { item.AddNeighbour(gridItems[x, y + 1]); } if (y - 1 >= 0 && gridItems[x, y - 1] != null) { item.AddNeighbour(gridItems[x, y - 1]); } }