我想在AnimatedSprite之间进行碰撞检测,它是box2d的Body和Shape.I'm使用下面的代码。但是它给出了错误。 “walls”是一个矩形形状,“player”是animatedsprite。
scene.registerUpdateHandler(new IUpdateHandler() {
public void reset() { }
public void onUpdate(final float pSecondsElapsed) {
if(walls.collidesWith(player)) {
walls.setColor(1, 0, 0);
} else {
walls.setColor(0, 1, 0);
}
if(!mCamera.isRectangularShapeVisible(player)) {
walls.setColor(1, 0, 1);
}
}
});
答案 0 :(得分:4)
collidesWith函数不是box2D碰撞检测的一部分。您需要使用Box2D ContactListener来监听引擎中的冲突并在那里处理它们。
答案 1 :(得分:0)
在AndEngine box2d中,您可以通过ContractListener检测碰撞。您可以在AndEngine box2d中查看有关如何使用ContactListener的有用详细信息。 click here