This commit is contained in:
2020-11-08 01:55:31 -03:00
parent 5710193580
commit 440471c0b0

View File

@@ -18,6 +18,8 @@ function App() {
if (value < 3 || value > 99) { if (value < 3 || value > 99) {
return; return;
} }
setMaxMines();
setRows(value); setRows(value);
}; };
@@ -25,9 +27,18 @@ function App() {
if (value < 3 || value > 99) { if (value < 3 || value > 99) {
return; return;
} }
setMaxMines();
setCols(value); setCols(value);
}; };
const setMaxMines = () => {
const matrixSize = rows * cols;
if (mines > matrixSize) {
setMines(matrixSize - 1);
}
};
const generateDummyBoard = () => { const generateDummyBoard = () => {
setDummyBoard([]); setDummyBoard([]);
const board = []; const board = [];
@@ -48,6 +59,10 @@ function App() {
if (value < 1 || value > 99) { if (value < 1 || value > 99) {
return; return;
} }
const matrixSize = rows * cols;
if (value >= matrixSize) {
return;
}
setMines(value); setMines(value);
}; };
@@ -66,14 +81,10 @@ function App() {
document.getElementsByClassName('reset')[0].innerHTML = '😎'; document.getElementsByClassName('reset')[0].innerHTML = '😎';
// Search for all unrevealed squares to put the flag // Search for all unrevealed squares to put the flag
dummyBoard.map((row, rowId) => activeGame.board.map((row, rowId) =>
row.map((col, colId) => { row.map((col, colId) => {
const cell = document.getElementById(`cell_${rowId}_${colId}`); if (col === -1) {
if ( const cell = document.getElementById(`cell_${rowId}_${colId}`);
!cell.classList.contains('revealed') &&
!cell.classList.contains('empty') &&
!cell.classList.contains('point')
) {
cell.classList.add('flagged'); cell.classList.add('flagged');
} }
}) })
@@ -81,7 +92,6 @@ function App() {
} }
if (activeGame && activeGame.win === false) { if (activeGame && activeGame.win === false) {
console.log(activeGame);
// search for all mines on board // search for all mines on board
activeGame.board.map((row, rowId) => activeGame.board.map((row, rowId) =>
row.map((col, colId) => { row.map((col, colId) => {