0
在游戏场景中,当玩家触发时,敌人将自动生成动画并且必须从场景中移出。我尝试了很多,但没有找到解决方案。在游戏场景中重新加载动画精灵Andengine
这里是我的代码。
it = bulletList.iterator();
while (it.hasNext()) {
final Bullet b = (Bullet) it.next();
if (b.sprite.collidesWith(enemy)) {
engine.runOnUpdateThread(new Runnable() {
public void run() {
enemy.animate(new long[]{100,100,100,100,100},10,14,1
, new IAnimationListener() {
@Override
public void onAnimationStarted(AnimatedSprite pAnimatedSprite,int
pInitialLoopCount) {
}
@Override
public void onAnimationLoopFinished(AnimatedSprite pAnimatedSprite,
int pRemainingLoopCount, int
pInitialLoopCount) {
// TODO Auto-generated method stub
}
@Override
public void onAnimationFrameChanged(AnimatedSprite pAnimatedSprite,
int pOldFrameIndex, int pNewFrameIndex) {
// TODO Auto-generated method stub
}
@Override
public void onAnimationFinished(AnimatedSprite pAnimatedSprite) {
// TODO Auto-generated method stub
detachChild(sprite);
}
});
enemy.setIgnoreUpdate(true);
it.remove();
break;
}
}
}
动画代码是runonupdatethread外部的微小运行,但我想动画它与我的精灵,当子弹(这也与动画代码移动)点击/碰撞。 “b.sprite.collidesWith(enemy)” 当游戏处于运行状态时子弹击中我的精灵时会调用此函数。所以,基本上我想在子弹击中我的对象时更新我的线程但不幸的是它不工作。 – developer