Pygame Mixer声音叠加



我试图使用混音器播放脚步时,箭头键被按下。但每当我这样做的时候,它显然会一直检测按钮并不断覆盖声音。

def walking():
walk = pygame.mixer.Channel(2)
walk_sound = mixer.Sound("Music/Walking.mp3")
walk.play(walk_sound)
if walk.get_busy():
# Don't play anything

这是行走声音的函数。如果有声音播放,是否有办法不播放任何内容?

if keypress[K_RIGHT]:
self.rect.move_ip(x, 0)
self.image = walk_right[walk_count // frame_count]
display.blit(self.image, (self.rect.x, self.rect.y))
walk_count += 1
self.last = "right"
walking()

这是我的Player类和Move方法的一部分,用于显示我在哪里调用行走声音函数。

在初始化应用程序循环之前创建通道并加载声音。如果通道不是busy,则只启动walking函数中的声音:

walk_channel = pygame.mixer.Channel(2)
walk_sound = mixer.Sound("Music/Walking.mp3")
def walking():
if not walk_channel.get_busy():
walk_channel.play(walk_sound)

最新更新