Phaser.events.onInputOut未分派

时间:2017-05-16 13:56:27

标签: phaser-framework

当鼠标悬停在它上面时,我正试图让一个精灵移动,我希望它在鼠标悬停在它上面时停止。

这是我的代码:

mySprite.events.onInputOver.add(() => touchMouse = true);
mySprite.events.onInputOut.add(() => touchMouse = false);

update() {
  if (touchMouse) {
    mySprite.x += 5;
  }
}

我的精灵正在移动,但如果我没有将指针移出初始精灵位置,则不会调度onInputOut信号!这导致我的精灵移出我的指针并继续其旅程,直到我移动我的鼠标......

它是一个移植器错误吗?有没有人可以解决这个问题?

非常感谢你,祝你有个美好的一天,

西蒙

修改

我只是尝试使用Phaser.InputHandler对象,但我遇到了同样的错误。这是代码:

update() {
  if (mySprite.input.pointerOver()) {
    mySprite.x += 5;
  }
}

1 个答案:

答案 0 :(得分:0)

有人在html5gamedevs论坛回答了我的问题。

  

当指针不移动时,Phaser通常不会更新inputOver / inputOut事件。你需要设置pointer.dirty = true。