0

我在 andengine 中移动了一个身体,并恢复了它在 X、Y 中的位置

并使用:

Get Position:

body.getPosition().x;

AnimatedSprite.getX();

Set Position:

Sprite.setPosition(x,y);

但没有人为我服务。

4

3 回答 3

3

如果我正确理解您的问题是什么,那么您正在寻找的方法是Body.setTransform(float x, float y, float angle). 请记住,身体坐标以米为单位,因此您必须将像素值除以您的PIXEL_TO_METER_RATIO(通常为 32)。

于 2012-09-24T08:47:00.780 回答
0

你可以这样做

yourBody.setTransform(new Vector2(x/32,y/32), 0);

这个问题与 如何使用andEngine移动精灵的主体相同?

于 2013-01-09T06:50:00.733 回答
0

您应该在方法 onUpdate 的 registerUpdateHandler 中执行此操作。

例子:

body.registerUpdateHandler(new IUpdateHandler() {

@Override
    public void reset() {

    }

    @Override
        public void onUpdate(float pSecondsElapsed) {
            body.getPosition();
            body.setPosition();
        }
});
于 2012-09-24T13:49:50.903 回答