private void openTile(int x, int y) { if (!gameField[y][x].isMine) { if (gameField[y][x].countMineNeighbors == 0){ if (gameField[y][x].isOpen == false){ setCellValue(x, y, ""); setCellColor(x, y, Color.GREEN); gameField[y][x].isOpen = true; List<GameObject> neighborns = getNeighbors(gameField[y][x]); for (int i = 0; i < neighborns.size(); i++) { openTile(neighborns.get(i).x, neighborns.get(i).y); } } } if (gameField[y][x].countMineNeighbors!=0) { setCellNumber(x, y, gameField[y][x].countMineNeighbors); setCellColor(x, y, Color.GREEN); gameField[y][x].isOpen = true; } } if (gameField[y][x].isMine){ setCellValue(x, y, MINE); setCellColor(x, y, Color.RED);} }