LibGdx inputProcessors正在播放touchDown

时间:2014-03-30 16:41:44

标签: java android libgdx box2d

嗨,所以我有这个球,我试图通过使用touchDown方法保持在空中。这对我有用,但它不一致,因为我必须反复点击屏幕才能说出来,有时它只是没有做任何事情。

        Gdx.input.setInputProcessor(new InputController(){
        @Override
        public boolean touchDown(int screenX, int screenY, int pointer, int button){
            random = new Random();
            int rand = random.nextInt(2);
            Vector3 mouseCoords = new Vector3(screenX, screenY, 0);
            camera.unproject(mouseCoords);
            mouseCoords.scl(WORLD_TO_BOX);


            if(ball.getFixtureList().get(0).testPoint(mouseCoords.x, mouseCoords.y)){
                movement.y = upPos;
                if(rand == 1){
                    movement.x = speedPos;
                }else if(rand == 0){
                    movement.x = speedMinus;
                }

                System.out.println("Reached the loop");
            }
            return true;                
        }
        @Override
        public boolean touchUp(int screenX, int screenY, int pointer, int button){
            movement.x = 0.00f;
            movement.y = 0.00f;
            return false;
        }

    });

我有一个名为inputController的类,它扩展了InputProcessor,因此我可以选择要使用的控件。我不知道它是否仅仅是引力不允许形状向上移动或者代码在假设时没有发射。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

现在好了,我明白了。我的世界计算框有点偏离