Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript和HTML5,冷却功能错误_Javascript_Html - Fatal编程技术网

Javascript和HTML5,冷却功能错误

Javascript和HTML5,冷却功能错误,javascript,html,Javascript,Html,我开发了一个游戏,你可以玩一门大炮,只需发射弹药,我计划让它成为一个简单的物理模拟。不过,有一个问题。我曾尝试实现一个冷却功能,使玩家每秒只能发射一颗子弹,但有时(如果玩家按住发射按钮),它会同时发射2、3或4颗子弹,然后休息1秒。大多数时候它只发射一颗子弹,但可能有30%的时候它会同时发射一连串的子弹。我不要这个 我想让它只发射一颗子弹,然后再发射。这是我的密码: 对于Keydown事件处理程序: else if( e.keyCode == 38 && CanFire) {

我开发了一个游戏,你可以玩一门大炮,只需发射弹药,我计划让它成为一个简单的物理模拟。不过,有一个问题。我曾尝试实现一个冷却功能,使玩家每秒只能发射一颗子弹,但有时(如果玩家按住发射按钮),它会同时发射2、3或4颗子弹,然后休息1秒。大多数时候它只发射一颗子弹,但可能有30%的时候它会同时发射一连串的子弹。我不要这个

我想让它只发射一颗子弹,然后再发射。这是我的密码:

对于Keydown事件处理程序:

else if( e.keyCode == 38  && CanFire) { //UP
            CanFire = false;            
            var bullet = new Bullet( Cannon.xpos, Cannon.ypos, 30, Cannon.angle );
            Bullets.push(bullet);               
            window.setInterval(Reload, 1000);

        }
重新加载功能:

function Reload() {
        CanFire = true;
        window.clearInterval(Reload);
    }
全局变量:

var CanFire = true;

clearInterval()
接受的是
intervalId
,而不是函数名。

clearInterval接受的是intervalId,而不是函数名……噢,谢谢,这解决了问题。