以下に、スプライトを頻繁にスポーンするコードと、スプライトを取り除くためのタッチ メソッドがあります (正常に動作します)。私の問題は、ゾンビスプライト 2 がスポーンし、別のゾンビスプライト 2 がスポーンするのを待つときです (したがって、画面に同じスプライトが 2 つ表示されます)。touch メソッドは、最後にスポーンされたゾンビスプライト 2 にのみ影響するのでしょうか?
this.getEngine().registerUpdateHandler(
zombieSpriteTimehandler = new TimerHandler(5, true,
new ITimerCallback() {
@Override
public void onTimePassed(TimerHandler pTimerHandler) {
// TODO Auto-generated method stub
zombieSprite2 = new Sprite(0, 200,
zombieregion, mEngine
.getVertexBufferObjectManager()) {
@Override
public boolean onAreaTouched(
final TouchEvent pSceneTouchEvent,
final float pTouchAreaLocalX,
final float pTouchAreaLocalY) {
ScaleModifier sm2 = new ScaleModifier(
5,zombieSprite2.getScaleX(),
zombieSprite2.getScaleX() + 1.03f);
zombieSprite2.registerEntityModifier(sm2);
if (zombieSprite2.getScaleX() > 1.02f) {
zombieSprite2
.setColor(Color.TRANSPARENT);
mScene.detachChild(zombieSprite2);
return true;
}
return false;
}
};
mScene.attachChild(zombieSprite2);