private void openTile(int x, int y) { GameObject cell = gameField[y][x]; if (cell.isOpen == true) { return; } cell.isOpen = true; setCellColor(x, y, Color.GREEN); if (cell.isMine) { setCellValue(x, y, MINE); setCellColor(x, y, Color.RED); } else if (cell.countMineNeighbors == 0) { setCellValue(x, y, ""); List < GameObject > neighbors = getNeighbors(cell); for (GameObject g:neighbors) { if (g.isOpen == false && g.isMine == false && g.countMineNeighbors == 0) openTile(g.x, g.y); } } else { setCellNumber(x, y, cell.countMineNeighbors); } }