gpt4 book ai didi

java - 区分libgdx中的 "Drag"和 "Touch Down then immidiately Touch Up"

转载 作者:行者123 更新时间:2023-12-01 13:15:54 25 4
gpt4 key购买 nike

我是 LibGdx 的新手,我在区分这两个问题时遇到了 libgdx 的问题。我正在 miniclip.com 上制作一款类似峡谷防御的游戏。当我着陆并立即触摸时,一把新枪将被添加到列表中。但当我拖动时,我只想移动我的相机。我的问题是,当在Android手机HTC感觉上运行时,我无法检测到这两个 Action ,它总是检测到这是一个拖动 Action ,即使我刚刚触碰然后又触碰了。在PC上,我已经做到了,只需单击或拖动,一切就完成了,但在Android上,这很难,请帮助我:-)提前感谢:-)

public boolean touchDown(int screenX, int screenY, int pointer, int button) {
// TODO Auto-generated method stub
tempx = screenX;
tempy = screenY;
isDrag = false;
// System.out.println(isDrag);
return true;
}

@Override
public boolean touchUp(int screenX, int screenY, int pointer, int button) {
// TODO Auto-generated method stub
vector.x = screenX;
vector.y = screenY;
vector.z = 0;
camera.unproject(vector);

if ((button == Input.Buttons.LEFT) && (isDrag == false)) {
Weapon wp = new Weapon(vector.x, vector.y);
weapon.add(wp);
}
isDrag = false;
// System.out.println(isDrag);
return true;
}

@Override
public boolean touchDragged(int screenX, int screenY, int pointer) {
// TODO Auto-generated method stub
isDrag = true;
if ((tempy - screenY < 0) && (isOn == true) && (num >= 0)) {
camera.translate(new Vector3(0, 5, 0));
num = num - 5;
}
if ((tempy - screenY > 0) && (isOn == true)
&& (temp.getHeight() >= num)) {
camera.translate(new Vector3(0, -5, 0));
num = num + 5;
}
tempy = screenY;
// System.out.println(isDrag);

return true;
}

最佳答案

仅当您距离 tempxtempy 一定距离时才设置 isDrag = true;

关于java - 区分libgdx中的 "Drag"和 "Touch Down then immidiately Touch Up",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22475621/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com