我必须做一个骰子游戏,在其中我将两个骰子的值相加并得出和。如果两个骰子都以相同的数字结尾(例如2和2,即4),则您将获得另一回合,然后再次掷骰子,并将2个新数字添加到先前的总和中(如前面提到的4个)。 例如 - 第一次尝试3和3,总和为6。 第2次尝试4和5,总和为6 + 4 + 5 = 15
我能够正确计算出第一个总和,但是随后的数字有时甚至被弄乱了,甚至给了两倍。
function oneRandom(){
var my1 = Math.floor(Math.random() * 6 ) +1 ;
var my2 = Math.floor(Math.random() * 6 ) +1 ;
var num1 = Number(my1);
var num2 = Number(my2);
var sum = num1 + num2;
console.log(sum);
var resultfield = document.getElementById("total").innerHTML = "<h1>"+sum+"</h1>";
document.getElementById("cilc").style.display = "none";
if (getImage.src == get2.src){
document.getElementById("cilc").style.display = "block";
var sum2 = num1 + num2;
var total = sum2 + sum;
var resultfield = document.getElementById("total").innerHTML = "<h1>"+total+"</h1>";
}
}
getImage和get2是与骰子图像匹配的数组,以在加载相同数字的情况下又转一圈。
答案 0 :(得分:0)
您可以尝试一下,
function rollDice (times) {
var num1 = Math.floor(Math.random() * Math.floor(6));
var num2 = Math.floor(Math.random() * Math.floor(6));
console.log(times, num1, num2);
var total = num1 + num2;
return num1 === num2 ? total + rollDice(times + 1) : total;
}
console.log(`result is ${rollDice(0)}`);