Advertisement
Guest User

Untitled

a guest
Sep 15th, 2019
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.71 KB | None | 0 0
  1. //действие при клике
  2.     private void openTile(int x, int y) {
  3.         if (!gameField[y][x].isFlag && gameField[y][x].isMine && !isGameStopped && !gameField[y][x].isOpen) { //мина
  4.             setCellValue(x, y, MINE);
  5.             setCellValueEx(x, y, Color.RED, MINE);
  6.             gameField[y][x].isOpen = true;
  7.             gameOver();
  8.         } else if (!gameField[y][x].isFlag && !gameField[y][x].isMine &&
  9.                     gameField[y][x].countMineNeighbors == 0 && !isGameStopped && !gameField[y][x].isOpen) { // пустые ячейки
  10.             ArrayList <GameObject> countNeib = new ArrayList<GameObject>();
  11.             countNeib = getNeighbors(gameField[y][x]);
  12.             gameField[y][x].isOpen = true;
  13.             countClosedTiles--;
  14.             score += 5;
  15.             setScore(score);
  16.             setCellValue(x, y, "");
  17.             setCellColor(x, y, Color.GREEN);
  18.             for (int i = 0; i < countNeib.size(); i++) {
  19.                 if (!countNeib.get(i).isOpen) {
  20.                     openTile(countNeib.get(i).x, countNeib.get(i).y);
  21.                 }
  22.             }
  23.             if (countClosedTiles == countMinesOnField) { //условие выигрыша
  24.                 win();
  25.             }
  26.  
  27.         } else if ( !gameField[y][x].isFlag && !gameField[y][x].isOpen && !isGameStopped) { //остальные ячейки
  28.             setCellNumber(x, y, gameField[y][x].countMineNeighbors);
  29.             gameField[y][x].isOpen = true;
  30.             countClosedTiles--;
  31.             score += 5;
  32.             setScore(score);
  33.             setCellColor(x, y, Color.GREEN);
  34.             if (countClosedTiles == countMinesOnField) {
  35.                 win();
  36.             }
  37.         }
  38.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement