我正在玩球类游戏,每件事情都很好,现在我想在两个球相互碰撞时添加声音。
我尝试了以下代码,但声音正在重复。我想它只会在碰撞开始时播放一次&不保持碰撞。
在onCreateResources:
SoundFactory.setAssetBasePath("sfx/");
try {
mSound = SoundFactory.createSoundFromAsset(getSoundManager(), this, "coll2.m4a");
} catch (IOException e) {
e.printStackTrace();
}
并在 onAccelerationChanged (AccelerationData pAccelerationData)中添加以下代码
if (face.collidesWith(face1) || face.collidesWith(face2))
{
mSound.play();
}
答案 0 :(得分:0)
您可以boolean
检查精灵是否已经发生碰撞。代码看起来像这样.-
if (face.collidesWith(face1) || face.collidesWith(face2)) {
if (!colliding) {
colliding = true;
mSound.play();
}
} else {
colliding = false;
}