2012-07-13 40 views
0

目前我的代码播放声音时,有使用andEngine和Box2D的和墙壁我的游戏的任何物体之间的接触,我的问题是,当联系人与任何制造它再次启动的对象我明白为什么会发生这种情况。如果可能的话,我想要做的就是继续播放声音,同时还要播放它以进行另一次碰撞。我想我可能需要使用线程,但我不确定如何在java中为android执行此操作。如何停止的声音重新启动时,发生碰撞时

@Override 
public void beginContact(Contact contact) 
{ 
    Rattle.this.mExplosionSound.play(); 
} 

更新:我不似乎已经能够解决这个问题,但我知道,我需要做的是同时播放这种声音多次,我都试过线程和的Soundpool,但没有得到运气要么仍不知道该怎么做。

回答

1

看来你只有一个声音的实例。然后你用相同的声音播放两次,因此它停止播放并从头开始播放。

想象一下,有一个CD播放器 - 你按下播放键,音乐开始播放。您再次按播放,播放器开始从头开始读取曲目。你需要的是两个玩家,因此你可能需要两个相同声音的实例。

(我没有与声音在Android上很多经验,所以我可能是错的,请采取与一粒盐的建议。)

-1

即使我开发一个游戏一段时间回来,我发现了一个类似的问题。您应该使用SoundPool播放短暂的声音,如碰撞和碰撞。这里有一些很好的链接帮助我。 Link 1link 2

+0

我希望人们开始给为downvote原因。毕竟我们都试图帮助这里! – Antrromet 2012-07-16 04:30:25