0

在游戏场景中,当玩家开火时,敌人会自动动画并离开场景。我尝试了很多,但没有找到解决方案。

这是我的代码。

     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;
                    }
               }
                }
4

1 回答 1

0

到底发生了什么?我不明白...

但我有点理解你的代码。我建议你删除 runonupdatethread。并将您的动画代码放在 runonupdatethard 之外并尝试一下。

我直接为精灵设置动画......

于 2013-07-30T13:00:34.440 回答