window.alert在画布碰撞时发生两次

时间:2017-07-06 12:02:20

标签: javascript function canvas collision-detection alert

对于我正在制作的帆布游戏,

我目前拥有的碰撞条件意味着将在浏览器窗口中显示window.alert。但是,由于碰撞的性质(太快了?),window.alert出现了两次,需要“好”。用这两个警报共按两次。

我尝试使用setTimeout / setInterval延迟提醒功能,但这不会导致任何变化。这必须是因为碰撞时精灵重叠了多少?

下面是我的碰撞情况,我的窗口警报我希望在它发生后只显示一次(这样可以重置游戏)。我怎么能改变这个以防止每次window.alert多个?{/ p>

         if (x < object.x && x + width > object.x &&
         y < object.y + 60 && height + y > object.y + 60) {

        setTimeout(function() {
        window.alert("You lose");
        location.reload();
        }, 100); 
    }

1 个答案:

答案 0 :(得分:5)

使用setTimeout代替setInterval

setTimeout只出现一次,setInterval无限。