Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //действие при клике
- private void openTile(int x, int y) {
- if (!gameField[y][x].isFlag && gameField[y][x].isMine && !isGameStopped && !gameField[y][x].isOpen) { //мина
- setCellValue(x, y, MINE);
- setCellValueEx(x, y, Color.RED, MINE);
- gameField[y][x].isOpen = true;
- gameOver();
- } else if (!gameField[y][x].isFlag && !gameField[y][x].isMine &&
- gameField[y][x].countMineNeighbors == 0 && !isGameStopped && !gameField[y][x].isOpen) { // пустые ячейки
- ArrayList <GameObject> countNeib = new ArrayList<GameObject>();
- countNeib = getNeighbors(gameField[y][x]);
- gameField[y][x].isOpen = true;
- countClosedTiles--;
- score += 5;
- setScore(score);
- setCellValue(x, y, "");
- setCellColor(x, y, Color.GREEN);
- for (int i = 0; i < countNeib.size(); i++) {
- if (!countNeib.get(i).isOpen) {
- openTile(countNeib.get(i).x, countNeib.get(i).y);
- }
- }
- if (countClosedTiles == countMinesOnField) { //условие выигрыша
- win();
- }
- } else if ( !gameField[y][x].isFlag && !gameField[y][x].isOpen && !isGameStopped) { //остальные ячейки
- setCellNumber(x, y, gameField[y][x].countMineNeighbors);
- gameField[y][x].isOpen = true;
- countClosedTiles--;
- score += 5;
- setScore(score);
- setCellColor(x, y, Color.GREEN);
- if (countClosedTiles == countMinesOnField) {
- win();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement