背景音乐在另一种声音效果后停止播放

时间:2019-04-18 12:40:14

标签: python pygame background-music

我正在制作一个pygame游戏,并试图添加背景音乐。直到我单击空格按钮,这一切都会起作用,这会引起另一种声音效果(拍摄声音),但是它会停止背景音乐,并且我不知道为什么以及如何解决此问题。
pygame.mixer.music.load(background_music) pygame.mixer.music.play(-1,0.0)
这就是按下空格时的声音效果(位于主循环内):
if keys[pygame.K_SPACE]: if (len(bullets) < 4 and shootLoop == 0 and not (ship.isBolt)) or (len(bullets) < 8 and shootLoop == 0 and ship.isBolt): if not (ship.isBolt): bullets.add(Projectile(round(ship.rect.x + ship.width / 2 - 5), ship.rect.y - ship.height - 8)) else: bullets.add(Projectile(ship.rect.x + ship.width - 11, ship.rect.y - ship.height + 8)) bullets.add(Projectile(ship.rect.x - 4, ship.rect.y - ship.height + 8)) pygame.mixer.music.load(SOUND_SHOT) pygame.mixer.music.play()
这是我用来播放背景音乐的代码
我该如何解决?

2 个答案:

答案 0 :(得分:0)

您可以像这样使用它:

pygame.mixer.music.load("background_music")
pygame.mixer.music.set_volume(0.5)
pygame.mixer.music.play(-1)

答案 1 :(得分:0)

pygame.mixer.music.load(os.path.join(os.getcwd(), 'sound', 'back-ground-music'))
pygame.mixer.music.set_volume(0.5)
pygame.mixer.music.play(loops=-1)  

pygame.mixer.Channel(0).play(pygame.mixer.Sound('sound\effects.wav'), maxtime=600)

使用通道,如果您想要其他效果声音,请使用pygame.mixer.Channel(1)#例如,您可以尝试