Phaser - 关键释放?

时间:2016-04-18 21:09:15

标签: javascript phaser-framework

如何检测密钥何时关闭,而不是检测密钥是否已被释放?

2 个答案:

答案 0 :(得分:1)

一种选择是使用onUpCallback。例如,在create函数中添加如下内容:

game.input.keyboard.onUpCallback = function (e) {
    // These can be checked against Phaser.Keyboard.UP, for example.
    console.log(e.keyCode);
};

我想你也可以存储你的update函数中的密钥是否已关闭,然后检查每次迭代是否已启动,如果你想跟踪密钥被按下的时间。

我不确定你会遇到什么样的性能问题,所以我可能会从onUpCallback开始。

答案 1 :(得分:1)

按下键时设置标志。在更新循环中检查标志是否已设置但是密钥不再关闭:

//... somewhere
var downFlag = false;

//... in update
if(yourkey.isDown){
   downFlag = true;
}else{
   if(downFlag){
      downFlag = false;
      //do something
   }
}

..但从詹姆斯所说的开始