private bool IsCellAvailable(int row, int col)
{
int[] directionRow = { 1, 1, 1, 0, -1, -1, -1, 0 };
int[] directionCol = { 1, 0, -1, -1, -1, 0, 1, 1 };
for (int i = 0; i < DirectionsCount; i++)
{
int nextRow = row + directionRow[i];
if (!this.IsInRange(nextRow))
{
directionRow[i] = 0;
}
int nextCol = col + directionCol[i];
if (!this.IsInRange(nextCol))
{
directionCol[i] = 0;
}
}
return this.CheckIfNextCellIsEmpty(row, col, directionRow, directionCol);
}