Neste artigo, aprenderemos como reproduzir ou adicionar áudio em nossos jogos Arcade usando Python.

Reproduzindo arquivo de áudio

Neste exemplo, queremos reproduzir nosso áudio sempre que o player tocar na extremidade esquerda ou direita da tela. Para isso, vamos usar 2 funções do módulo arcade.

  • arcade.load_sound(): Usaremos esta função para carregar nosso arquivo de áudio.

Sintaxe: arcade.load_sound (file_path, streaming)

Parâmetros:

file_path: nome do arquivo de som a ser carregado.



streaming: Booleano para determinar se transmitimos o som ou carregamos tudo na memória.

Retorna: objeto de som que pode ser usado pela função play_sound().

  • arcade.play_sound(): Usaremos esta função para reproduzir nosso áudio.

Sintaxe: arcade.play_sound (som, volume, pan, loop)

Parâmetros:

  • som: som carregado por load_sound()
  • volume: Volume do som
  • pan: de qual parte você deseja iniciar o áudio (-1 = esquerda, 0 = centro e 1 = direita)

No exemplo abaixo, vamos criar uma classe MainGame(). Dentro desta classe primeiro, vamos inicializar algumas variáveis ​​para as coordenadas de velocidade, xey do jogador e, em seguida, criaremos 2 funções dentro desta classe.

  • on_draw(): Dentro desta função, desenharemos nosso player e iniciaremos a renderização.
  • on_update(): Nesta função, vamos atualizar as coordenadas x do sprite do jogador adicionando a velocidade. Depois disso, se o jogador cruzar os limites da tela, mudaremos a direção do movimento e reproduziremos o áudio usando a função play_sound().

Abaixo está a implementação:

# Importing arcade module
import arcade
  
# Creating MainGame class       
class MainGame(arcade.Window):
    def __init__(self):
        super().__init__(600, 600, title="Player Movement")
  
        # Initializing the initial x and y coordinated
        self.x = 250 
        self.y = 250
  
        # Initializing a variable to store
        # the velocity of the player
        self.vel = 300
  
    # Creating on_draw() function to draw on the screen
    def on_draw(self):
        arcade.start_render()
  
        # Drawing the rectangle using
        # draw_rectangle_filled function
        arcade.draw_rectangle_filled(self.x, self.y,50, 50,
                                     arcade.color.GREEN )
    # Creating on_update function to
    # update the x coordinate
    def on_update(self,delta_time):
        self.x += self.vel * delta_time
  
        # Changing the direction of
        # movement if player crosses the screen
        if self.x>=550 or self.x<=50:
            self.vel *= -1
  
            # Loading the audio file
            audio = arcade.load_sound('Audio.mp3',False)
  
            # Printing "Playing Audio"
            print("Playing Audio.mp File")
  
            # Playing the audio
            arcade.play_sound(audio,1.0,-1,False)
              
          
# Calling MainGame class       
MainGame()
arcade.run()

Saída:

 Atenção geek! Fortaleça suas bases com o Python Programming Foundation Course e aprenda o básico.