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 (враг)" Эта функция вызывается, когда пуля попадает в мой спрайт, когда игра находится в рабочем состоянии. Итак, в основном я хочу обновить свой поток, когда пуля попадает в мой объект. Но, к счастью, он не работает. – developer