public Point<int> GetRandomTile(TileCheckDelegate checkDelegate) { List<Point<int>> availablePoints = new List<Point<int>> (); for(int x = 0; x < Width; x++){ for(int y = 0; y < Height; y++){ if(checkDelegate(tiles[x][y])){ availablePoints.Add(new Point<int>(x, y)); } } } return availablePoints.Count > 0 ? availablePoints [UnityEngine.Random.Range (0, availablePoints.Count)] : null; }
public Point <int> GetRandomTile(TileCheckDelegate checkDelegate) { List <Point <int> > availablePoints = new List <Point <int> > (); for (int x = 0; x < Width; x++) { for (int y = 0; y < Height; y++) { if (checkDelegate(tiles[x][y])) { availablePoints.Add(new Point <int>(x, y)); } } } return(availablePoints.Count > 0 ? availablePoints [UnityEngine.Random.Range(0, availablePoints.Count)] : null); }