2
當用戶點擊移動或靜態對象(即實體)時,如何聽取鼠標單擊事件並執行hitTest以查看是否在目標上單擊了鼠標?如何在實體上執行hitTest
當用戶點擊移動或靜態對象(即實體)時,如何聽取鼠標單擊事件並執行hitTest以查看是否在目標上單擊了鼠標?如何在實體上執行hitTest
您需要爲指針事件添加偵聽器。以下是實現該目的的一種簡單方法:
...
import playn.core.Pointer;
public class HitTestGame implements Game
{
@Override
public void init()
{
...
final HitTestGame self = this;
// pointer
pointer().setListener(new Pointer.Adapter() {
@Override
public void onPointerEnd(Pointer.Event event)
{
self.onPointerUp((int)event.x(), (int)event.y());
}
//public void onPointerStart(Pointer.Event event)
//public void onPointerDrag(Pointer.Event event)
});
...
}
public void onPointerUp(int x, int y)
{
// Do region checks here
if ((x >= entity.left() && x <= entity.right())
&& (y >= entity.top() && y <= entity.bottom()))
{
System.out.println("Entity has been clicked!");
}
}
...
}