我正在制作红光绿光型游戏。以下是红绿灯变色的部分:
var green = function() {
var r = Math.floor(Math.random() *5000 + 3000);
ctx.fillStyle = "green";
ctx.fillRect(900, 580, 200, 100);
green = true;
setTimeout(red, r);
};
var red = function() {
var r = Math.floor(Math.random() *3000 + 2000);
ctx.fillStyle = "red";
ctx.fillRect(900, 580, 200, 100);
green = false;
setTimeout(green, r);
};
如果我取出变量绿色,那么它工作正常,但我需要它,所以游戏知道玩家什么时候可以移动。我将不胜感激任何帮助!
答案 0 :(得分:1)
您覆盖变量green
。
最初是function
,在red
功能中,您可以为其分配true
。这就是您setTimeout(green,r);
无法正常工作的原因。