Lab de Lenguajes de Programación
Aquí otro post sobre el módulo pygame, en este post veremos como agegar sonidos a nuestra ventana y como hacer que nuestra ventana se cierre al presionar ciertos botonoes del teclado.
Para hacer esto abrimos el código que hasta ahorita hemos realizado con los posts anteriores e importamos el módulo pygame.mixer , para esto iremos a la línea
import sys, pygame
Agregaremos una coma y pondremos pygame.mixer.Despues debemos tener un sonido para agregarselo a nuestra ventana. Lo que hice fue descargar un sonido de la siguietne página: http://soundbible.com/ aquí vienen muchos sonidos que podemos descargar pero debemos descargarlos o tenerlos en formato .wav porque es el formato que pygame puede reproducir. Y recuerden que debemos tenerlo en la misma carpeta dondese encuentra nuestro código.
Ahora creamos una variable, ya sea antes o despues de las variables tamano o ventana, la cual llame sonido = pygame.mixer.Sound()
sonido = pygame.mixer.Sound('bubbles.wav')
pygame.mixer.Sound es la instrucción para cargar el sonido, 'bubbles.wav' es el nombre de nuestro sonido junto con su extensión.
Ahora para reproducir el sonido usaremos la instrucción
sonido.play()
sonido es el nombre de nuestra variable y .play() es para reproducirlo.
El resto de nuestro código queda igual con el ciclo que habiamos hecho y todo eso. Ahora lo ejecutamos y tendremos a Tux moviendose en diagonal y el sonido se reproducirá desde que Tux empieze a moverse.
Si queremos que el sonido se reproduzca cada vez qu la pantalla cambie de rojo a negro y de negro a rojo haremos lo siguiente
Dentro de nuestro ciclo, especificamente en el if debajo de la linea r1 = -1 y en el elif debajo de la linea r1 = 1, colocaremos la intrucción para reproducir nuestro sonido que es
sonido.play()
Ahora ya nuestro sonido se reproducirá cada vez que el fondo de nuestra ventana cambie de negro a rojo y rojo a negro.Bueno, ya hecho esto les explicaré como hacer que nuestra ventana se cierre al preionar ciertos botones del teclado
Lo que necesitamos hacer es importar un módulo de pygame para que reconozca las instrucciones al presionar los botones del teclado. Debe ir debajo de import sys, pygame, pygame.mixer
from pygame.locals import *
Luego, iremos a nuestro ciclo y donde tenemos la línea if cerrar.type == pygame.QUIT: sys.exit()
Despues de los dos puntos el pedazo de línea sys.exit() la colocaremos dentro del if. Ahora hacemos un elif con lo siguiente
elif cerrar.type == KEYDOWN and cerrar.key == K_ESCAPE:
sys.exit()
Que este elif lo que hace es que para cerrar la ventana sys.exit() debemos preionar un boton del teclado cerrar.type pero tambien debe ser igual al boton Esc cerrar.key == K_ESCAPE:sys.exit()
Ahora copiaremos y pegaremos esta misma línea debajo y cambiaremos cerrar.key == K_ESCAPE: por cerrar.key == K_q:
elif cerrar.type == KEYDOWN and cerrar.key == K_q:
sys.exit()
Y ahora al ejecutar el código par acerrar la ventana lo podemos hacer de 3 formas diferentes presionando la Cruz en los botones de control, presionando el botón Esc o con la letra q.
Bueno eso es todo en este post, espero les ayudee y cualquier duda comenten (Y).
Saludos...
Ponte las pilas. Necesitas 21 puntos de entradas entre ahora y la mañana del lunes para aprobar el laboratorio.
ReplyDelete