我正在使用AndEngine创建一个简单的游戏。我有精灵以恒定的速度移动。当精灵撞到墙壁或在接触点处相互碰撞时,我需要能够显示点(+1),(+ 2)等。我怎么能用文字做到这一点?
我正在使用AndEngine示例“MovingBallExample.java”的修改版本。下面的代码显示了当球击中墙壁时球如何反转方向。我需要在接触点显示文本,最好是在圆圈中显示几秒钟。
private static class Ball extends AnimatedSprite {
private final PhysicsHandler mPhysicsHandler;
public Ball(final float pX, final float pY, final TiledTextureRegion pTextureRegion, final VertexBufferObjectManager pVertexBufferObjectManager) {
super(pX, pY, pTextureRegion, pVertexBufferObjectManager);
this.mPhysicsHandler = new PhysicsHandler(this);
this.registerUpdateHandler(this.mPhysicsHandler);
this.mPhysicsHandler.setVelocity(BALL_VELOCITY, BALL_VELOCITY);
}
@Override
protected void onManagedUpdate(final float pSecondsElapsed) {
if(this.mX < 0) {
this.mPhysicsHandler.setVelocityX(BALL_VELOCITY);
} else if(this.mX + this.getWidth() > CAMERA_WIDTH) {
//**** Need to add Points text here **********/
this.mPhysicsHandler.setVelocityX(-BALL_VELOCITY);
}
if(this.mY < 0) {
this.mPhysicsHandler.setVelocityY(BALL_VELOCITY);
} else if(this.mY + this.getHeight() + 80 > CAMERA_HEIGHT) {
//**** Need to add Points text here **********/
this.mPhysicsHandler.setVelocityY(-BALL_VELOCITY);
}
欢迎任何和所有的想法。
答案 0 :(得分:4)
我找到了答案。我刚刚添加了以下代码
x = this.getX();
y = this.getY();
bText.setPosition(x+10,y+10);
bText.setText("+1");
其中“这个” 是精灵对象,我能够将文本设置在精灵从墙上反弹的大致位置