/

phaser-mouse-input

#Phaser:滑鼠輸入

該文章是Phaser系列的一部分。點擊這裡查看系列文章的第一篇。

任何 GameObject 都可以被設置為可互動。

為了實現這一點,我們必須通過調用setInteractive()方法來設置。

1
2
text = this.add.text(100, 100, '測試')
text.setInteractive()

一旦一個 GameObject 變成了可互動的,它就可以聽取事件。

我們可以使用on()方法來做到這一點。我們通過傳入事件名和當事件發生時要執行的回調函數來實現:

1
text.on('pointerup', function () {})

pointerup只是我們可以聽取的滑鼠事件之一。我們還有:

  • pointerdown
  • pointerdownoutside
  • pointerup
  • pointerupoutside
  • pointermove
  • pointerover
  • pointerout
  • wheel

這只是一個開始。我們還有很多先進的滑鼠(和觸摸)事件控制可供我們使用。

gameobjectdown是一個更通用的事件,當點擊任何互動元素時觸發,它不在物件上觸發,而是在this.input上觸發:

1
this.input.on('gameobjectdown', () => {})

tags: [“Phaser”, “mouse input”, “interactive element”, “events”]