【发布时间】:2014-03-29 14:22:01
【问题描述】:
基本上我正在使用 LibGdx 制作一个涉及球和地面的游戏。目标是通过触摸球尽可能长时间地保持球在空中。
到目前为止,我只使用了 box2d 并没有在形状上放置任何精灵。但我似乎无法正常工作。
到目前为止,我对此功能的看法如下:
这是设置一个扩展输入处理器的类,因为我只想使用 touchDown 方法。
Gdx.input.setInputProcessor(new InputController(){
@Override
public boolean touchDown(int screenX, int screenY, int pointer, int button){
if((screenX == ball.getPosition().x) && (screenY == ball.getPosition().y)){
movement.y = speed;
}
return true;
}
});
Ball 是一个设置为球形状世界的物体。速度是一个浮点变量。然后我有
ball.applyForceToCenter(movement, true);
在渲染方法中移动是一个向量 2,直到触摸它才定义它应该将 y 位置增加 500。
任何人都可以帮忙,因为这不起作用:(
【问题讨论】:
-
InputController 是你自己的自定义类吗?它似乎不在 api 中的任何地方。
-
是的,这只是扩展了 InputProcessor 类,所以我可以重写 touchDown 方法,而无需其他所有内容。