• Jogos
  • 07. Som

Som

Tocando músicas

Como só é possível tocar uma música por vez, a função que carrega um arquivo de música não devolve nada. Basta chamar a função de carregamento e posteriormente a função que toca a música carregada (você pode consultar a documentação das funções abaixo aqui):

pygame.mixer.music.load('caminho-do-arquivo-de-musica')
pygame.mixer.music.play()

Exercício 1

Em que função da nossa estrutura padronizada (inicializa, atualiza_estado, desenha) devemos chamar as funções que carregam e tocam a música?

Resposta

A resposta para esta pergunta não é necessariamente única. Uma resposta razoável seria a função inicializa. Entretanto, se quisermos trocar de música ao longo do jogo (ao mudar de fase, por exemplo), precisaríamos chamar a função novamente em outro lugar.

A função atualiza_estado parece ser uma boa opção, mas devemos implementar alguma estrutura para garantir que não vamos ficar recarregando e recomeçando a música (ao chamar a função pygame.mixer.music.play() novamente, a música é reiniciada). Isso pode ser feito, por exemplo, com um valor booleano armazenado no estado para indicar se a música já iniciou ou não.

Agora vamos aprender a tocar efeitos sonoros.