<!DOCTYPE html> <html> <head> <style> .container { display: flex; justify-content: space-between; } .bigSquare { width: 224px; height: 224px; border: 1px solid #000; display: flex; flex-wrap: wrap; } .square { width: 40px; height: 40px; display: inline-block; border: 1px solid #000; background-color: #DDD; cursor: pointer; text-align: center; line-height: 40px; } .message { font-size: 24px; } .action { margin-right: 20px; } </style> <script> var balance = 1000; // начальный баланс var betAmount = 0; var lostGame = false; var inGame = false; var One = false; var greenCount = 0; var TotalMines = 25; var winMultiplier = 1.0; var taked = 0; function generateMines(numMines) { if (balance === 0) { document.getElementById('message').textContent = "Недостаточно средств для начала игры!"; return; } var squares = document.getElementsByClassName('square'); var mineArray = Array(25).fill(0); var placedMines = 0; while (placedMines < numMines) { var index = Math.floor(Math.random() * 25); if (mineArray[index] != 1) { mineArray[index] = 1; placedMines++; } } var message = document.getElementById('message'); message.textContent = ""; for (var i = 0; i < 25; i++) { squares[i].style.backgroundColor = '#DDD'; squares[i].removeEventListener('click', clickHandler); squares[i].addEventListener('click', clickHandler); } function clickHandler() { var index = Array.prototype.indexOf.call(this.parentNode.children, this); if (mineArray[index] === 1) { this.style.backgroundColor = 'red'; message.textContent = 'Проиграл!'; lostGame = true; inGame = false; One = false; taked = 0; for (var i = 0; i < 25; i++) { squares[i].removeEventListener('click', clickHandler); if (mineArray[i] === 1) { squares[i].style.backgroundColor = 'red'; } else { squares[i].style.backgroundColor = 'green'; } } } else { this.style.backgroundColor = 'green'; taked++; One = true; } } } function placeBet() { betAmount = parseInt(document.getElementById("betInput").value); var mineCount = parseInt(document.getElementById("minesInput").value); if (betAmount > balance) { document.getElementById('message').textContent = "У вас недостаточно средств для этой ставки!"; } else if (mineCount < 2 || mineCount > 24) { document.getElementById('message').textContent = "Введите количество мин от 2 до 24"; } else if (inGame) { document.getElementById('message').textContent = "Вы в игре!"; } else { balance -= betAmount; balance = Math.floor(balance); document.getElementById('balance').textContent = "Ваш текущий баланс: " + balance; generateMines(mineCount); document.getElementById('message').textContent = "Игра началась! Выигрывайте!" lostGame = false; // сбросить статус проигрыша inGame = true; One = false; taked = 0; } } function claimWin() { if (betAmount === 0){ document.getElementById('message').textContent = "Сделайте ставку, чтобы начать игру!"; } else if (lostGame) { document.getElementById('message').textContent = "Вы проиграли, нельзя забрать ставку!"; } else if (One === false) { document.getElementById('message').textContent = "Сделайте хотя бы 1 ход!"; } else { var mineCount = parseInt(document.getElementById("minesInput").value); var winMultiplier; if (mineCount >= 2 && mineCount <= 24) { winMultiplier = mineCount * taked; } var winAmount = winMultiplier * betAmount; winAmount = Math.floor(winAmount); balance += winAmount; balance = Math.floor(balance); document.getElementById('balance').textContent = "Ваш текущий баланс: " + balance; document.getElementById('message').textContent = "Вы забрали свой выигрыш: " + winAmount; betAmount = 0; // Сбрасываем сумму ставки после получения выигрыша betAmount = Math.floor(betAmount); taked = 0; taked = Math.floor(taked); inGame = false; One = false; } } </script> </head> <body> <h1>Добро пожаловать на поле мин!</h1> <h3>Кликните на клетку, чтобы узнать, есть ли в ней мина.</h3> <div class="container"> <div class="bigSquare"> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> </div> <div> <div id="balance">Ваш текущий баланс: 1000</div> <label for="betInput">Введите сумму ставки:</label> <input type="number" id="betInput"> <br> <label for="minesInput">Введите количество мин (от 2 до 24):</label> <input type="number" id="minesInput"> <br> <button onclick="placeBet()">Сделать ставку</button> <button onclick="claimWin()" class="action">Забрать</button> </div> </div> <div id="message" class="message"></div> </body> </html> HTML <!DOCTYPE html> <html> <head> <style> .container { display: flex; justify-content: space-between; } .bigSquare { width: 224px; height: 224px; border: 1px solid #000; display: flex; flex-wrap: wrap; } .square { width: 40px; height: 40px; display: inline-block; border: 1px solid #000; background-color: #DDD; cursor: pointer; text-align: center; line-height: 40px; } .message { font-size: 24px; } .action { margin-right: 20px; } </style> <script> var balance = 1000; // начальный баланс var betAmount = 0; var lostGame = false; var inGame = false; var One = false; var greenCount = 0; var TotalMines = 25; var winMultiplier = 1.0; var taked = 0; function generateMines(numMines) { if (balance === 0) { document.getElementById('message').textContent = "Недостаточно средств для начала игры!"; return; } var squares = document.getElementsByClassName('square'); var mineArray = Array(25).fill(0); var placedMines = 0; while (placedMines < numMines) { var index = Math.floor(Math.random() * 25); if (mineArray[index] != 1) { mineArray[index] = 1; placedMines++; } } var message = document.getElementById('message'); message.textContent = ""; for (var i = 0; i < 25; i++) { squares[i].style.backgroundColor = '#DDD'; squares[i].removeEventListener('click', clickHandler); squares[i].addEventListener('click', clickHandler); } function clickHandler() { var index = Array.prototype.indexOf.call(this.parentNode.children, this); if (mineArray[index] === 1) { this.style.backgroundColor = 'red'; message.textContent = 'Проиграл!'; lostGame = true; inGame = false; One = false; taked = 0; for (var i = 0; i < 25; i++) { squares[i].removeEventListener('click', clickHandler); if (mineArray[i] === 1) { squares[i].style.backgroundColor = 'red'; } else { squares[i].style.backgroundColor = 'green'; } } } else { this.style.backgroundColor = 'green'; taked++; One = true; } } } function placeBet() { betAmount = parseInt(document.getElementById("betInput").value); var mineCount = parseInt(document.getElementById("minesInput").value); if (betAmount > balance) { document.getElementById('message').textContent = "У вас недостаточно средств для этой ставки!"; } else if (mineCount < 2 || mineCount > 24) { document.getElementById('message').textContent = "Введите количество мин от 2 до 24"; } else if (inGame) { document.getElementById('message').textContent = "Вы в игре!"; } else { balance -= betAmount; balance = Math.floor(balance); document.getElementById('balance').textContent = "Ваш текущий баланс: " + balance; generateMines(mineCount); document.getElementById('message').textContent = "Игра началась! Выигрывайте!" lostGame = false; // сбросить статус проигрыша inGame = true; One = false; taked = 0; } } function claimWin() { if (betAmount === 0){ document.getElementById('message').textContent = "Сделайте ставку, чтобы начать игру!"; } else if (lostGame) { document.getElementById('message').textContent = "Вы проиграли, нельзя забрать ставку!"; } else if (One === false) { document.getElementById('message').textContent = "Сделайте хотя бы 1 ход!"; } else { var mineCount = parseInt(document.getElementById("minesInput").value); var winMultiplier; if (mineCount >= 2 && mineCount <= 24) { winMultiplier = mineCount * taked; } var winAmount = winMultiplier * betAmount; winAmount = Math.floor(winAmount); balance += winAmount; balance = Math.floor(balance); document.getElementById('balance').textContent = "Ваш текущий баланс: " + balance; document.getElementById('message').textContent = "Вы забрали свой выигрыш: " + winAmount; betAmount = 0; // Сбрасываем сумму ставки после получения выигрыша betAmount = Math.floor(betAmount); taked = 0; taked = Math.floor(taked); inGame = false; One = false; } } </script> </head> <body> <h1>Добро пожаловать на поле мин!</h1> <h3>Кликните на клетку, чтобы узнать, есть ли в ней мина.</h3> <div class="container"> <div class="bigSquare"> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> <div class='square'></div> </div> <div> <div id="balance">Ваш текущий баланс: 1000</div> <label for="betInput">Введите сумму ставки:</label> <input type="number" id="betInput"> <br> <label for="minesInput">Введите количество мин (от 2 до 24):</label> <input type="number" id="minesInput"> <br> <button onclick="placeBet()">Сделать ставку</button> <button onclick="claimWin()" class="action">Забрать</button> </div> </div> <div id="message" class="message"></div> </body> </html> заебла эта шайтанка нахуй, сделал чтоб как то умножало мне по клеткам эту хуйню, но в итоге умножается прошлый выигрыш на 2 каждый раз, фикс пж я спать пошел нахуй