[英]Pygame music will not play inside of my game function
我正在尝试在游戏的战斗阶段播放一些平静的背景音乐,我的游戏在一个函数内运行,每当我调用该函数播放音乐时,它都会保持沉默,直到我退出 game() 函数,然后音乐会突然响起,我会很欣赏可能导致这种情况的任何见解。
def game():
running = True
while running:
screen.fill((0, 0, 0))
sewer = pygame.image.load('assets\\backgrounds\\sewer.png')
screen.blit(sewer,(0,0))
mx, my = pygame.mouse.get_pos()
turn = 0
mob()
monster_health()
stopmusic()
pmusic("assets\\music\\battlemusic.mp3")
def stopmusic():
pygame.mixer.music.stop()
def pmusic(file):
pygame.mixer.music.load(file)
pygame.mixer.music.play(-1)
您在调用pmusic()
后立即调用stopmusic()
。 因此,每次您进入游戏循环时,音乐都会立即关闭并重新开始。 当您结束游戏时,您会在打开音乐后退出 while 循环,这就是您后来听到它的原因。 您应该在进入游戏循环之前启动您的音乐,并在退出时停止:
def game():
running = True
pmusic("assets\\music\\battlemusic.mp3")
while running:
...
stopmusic()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.