Фоновая музыка перестает играть после другого звукового эффекта - PullRequest
0 голосов
/ 18 апреля 2019

Я делаю игру в жанре пигмей и пытаюсь добавить фоновую музыку.Все работает до тех пор, пока я не нажму на кнопку пробела, которая вызывает еще один звуковой эффект (стреляющий звук), но останавливает фоновую музыку, и я не знаю, почему и как это исправить.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 голосов
/ 18 апреля 2019
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) # например. Можете ли вы попробовать это

0 голосов
/ 18 апреля 2019

Вы можете использовать это так:

pygame.mixer.music.load("background_music")
pygame.mixer.music.set_volume(0.5)
pygame.mixer.music.play(-1)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...