我正在嘗試做一個非常基本的骰子游戲(新的Javascript)。在頁面加載時,「骰子」會被「滾動」三次,並顯示結果,並顯示一條消息,說明您是否設置了滾動條6。我試圖提出一個有關贏得了多少遊戲的永久消息 - 問題是,如果你看看下面的代碼,那麼每次贏得勝利時,我爲這個「勝利」使用的變量都會增加,但是它實際上只顯示兩個值:0,如果用戶剛剛輸了,1,如果是贏。無論骰子擲出多少次,它都不會達到更高的數字。想知道是否有人有解決方案/解釋?Javascript中的非常基本的骰子游戲 - 試圖記錄'贏'變量
代碼:
console.log("Dice game. You have 3 tries to roll a 6 - go");
var rolls = 0;
var wins = 0;
function rollDice() {
var dice = Math.random();
if (dice <= .17) {
dice = 1;
}
else if (dice <= .33) {
dice = 2;
}
else if (dice <= .50) {
dice = 3;
}
else if (dice <= .67) {
dice = 4;
}
else if (dice <= .84) {
dice = 5;
}
else if (dice <= 1) {
dice = 6;
}
return dice;
}
function diceGame() {
do {
var dice = rollDice();
console.log(dice);
rolls++;
if (dice === 6) {
console.log("You won!");
wins++;
if (rolls === 1) {
console.log("It took " + rolls + " try");
}
else {
console.log("It took " + rolls + " tries");
}
break;
}
}
while (rolls <= 2);
if (dice !== 6) {
console.log("You lost");
}
}
diceGame();
console.log("Times won: " + wins);
頁面必須刷新/重新加載才能再次擲骰子? – Sufian 2015-02-09 07:34:08
當你贏了,你正在做'break',而不是'繼續;' – Krzysiek 2015-02-09 07:36:06
只要刪除「break」運算符 – Dart 2015-02-09 07:57:07