//находит соседей для данной ячейки public void FindNeighboursOfCell(SaperCell cell) { cell.numberOf9TypeNeighbours = 0; cell.numberOfFlags = 0; //если сверху есть сосед, то добавляем его if (cell.Y > 0) { cell.setNeighbour(saperField[cell.Y - 1, cell.X], 0); } //если сверху справа есть сосед, то добавляем его if (cell.Y > 0 && cell.X < 29) { cell.setNeighbour(saperField[cell.Y - 1, cell.X + 1], 1); } //если справа есть сосед, то добавляем его if (cell.X < 29) { cell.setNeighbour(saperField[cell.Y, cell.X + 1], 2); } //если справа снизу есть сосед, то добавляем его if (cell.Y < 15 && cell.X < 29) { cell.setNeighbour(saperField[cell.Y + 1, cell.X + 1], 3); } //если снизу есть сосед, то добавляем его if (cell.Y < 15) { cell.setNeighbour(saperField[cell.Y + 1, cell.X], 4); } //если снизу слева есть сосед, то добавляем его if (cell.Y < 15 && cell.X > 0) { cell.setNeighbour(saperField[cell.Y + 1, cell.X - 1], 5); } //если слева есть сосед, то добавляем его if (cell.X > 0) { cell.setNeighbour(saperField[cell.Y, cell.X - 1], 6); } //если сверху слева есть сосед, то добавляем его if (cell.Y > 0 && cell.X > 0) { cell.setNeighbour(saperField[cell.Y - 1, cell.X - 1], 7); } }