libGDX:确定touchDragged的方向

时间:2016-01-29 21:22:22

标签: java math libgdx

当我在touchDragged方法中编写代码时,允许播放器使用以下任意一个方向进行拖动:

(上,下,右,左,右上,左上,右下,左下)

1]

我的代码:

public void touchDragged(InputEvent event, float x, float y, int pointer) {
    for (int i = 0; i < 4; i++) {
        for (int j = 0; j < 4; j++) {
            Image img = img[i][j];
            float imgX = img[i][j].getX();
            float imgY = img[i][j].getY();
            float width = img[i][j].getWidth();
            float height = img[i][j].getHeight();
            if (x > imgX && x <= imgX + width && y > imgY && y <= imgY + height) {
                img.setColor(Color.RED);
            }
        }
    }
});

结果:(当玩家向up-right方向拖动时)

2]

但是如何阻止包含X的下方方块听取触摸事件?因为我知道玩家想要朝这个方向前进up-right

我首先计算直线linear equation的斜率然后根据斜率确定方向吗?或者什么?

任何想法?

0 个答案:

没有答案