En este artículo, aprenderemos cómo reproducir o agregar audio en nuestros juegos de Arcade usando Python.
Reproducir archivo de audio
En este ejemplo, queremos reproducir nuestro audio siempre que el reproductor toque el extremo izquierdo o derecho de la pantalla. Para ello, vamos a utilizar 2 funciones del módulo arcade.
- arcade.load_sound(): Usaremos esta función para cargar nuestro archivo de audio.
Sintaxis: arcade.load_sound(file_path, streaming)
Parámetros:
file_path: Nombre del archivo de sonido a cargar.
streaming: booleano para determinar si transmitimos el sonido o lo cargamos todo en la memoria.
Devuelve: objeto de sonido que puede ser utilizado por la función play_sound().
- arcade.play_sound(): Usaremos esta función para reproducir nuestro audio.
Sintaxis: arcade.play_sound(sonido, volumen, panorama, loop)
Parámetros:
- sonido: Sonido cargado por load_sound()
- volumen: volumen del sonido
- pan: desde qué parte desea iniciar el audio (-1 = izquierda, 0 = centro y 1 = derecha)
En el siguiente ejemplo, vamos a crear una clase MainGame(). Dentro de esta clase primero, vamos a inicializar algunas variables para la velocidad, las coordenadas x e y del jugador y luego crearemos 2 funciones dentro de esta clase.
- on_draw(): Dentro de esta función, dibujaremos nuestro reproductor y comenzaremos el renderizado.
- on_update(): En esta función, actualizaremos las coordenadas x del sprite del jugador agregando la velocidad. Después de eso, si el reproductor cruza el límite de la pantalla, cambiaremos la dirección del movimiento y reproduciremos el audio usando la función play_sound().
A continuación se muestra la implementación:
Python3
# 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()
Producción:
Publicación traducida automáticamente
Artículo escrito por imranalam21510 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA