La función reproducir() gestiona la reproducción de efectos de sonido en el juego. Utiliza un sistema de creación dinámica de reproductores para permitir múltiples sonidos simultáneos.
-
audiotrack
Creación dinámica
Genera nuevos reproductores para cada efecto de sonido
-
compare_arrows
Selección de sonido
Usa match para seleccionar el sonido adecuado
-
auto_delete
Gestión automática
Los reproductores se eliminan automáticamente al terminar
lightbulb
Puntos clave
check_circle
Permite superposición de sonidos
check_circle
Gestión eficiente de memoria
check_circle
Interfaz simple para efectos de sonido
Sistema de reproducción de efectos
volume_up
func reproducir(nombre):
# Crear nuevo reproductor
var player = crear_audio_player()
# Asignar sonido según nombre
match nombre:
"disparo":
player.stream = SFX_DISPARO
player.volume_db = -5
"destruccion":
player.stream = SFX_DESTRUCCION
player.volume_db = -3
"muerte":
player.stream = SFX_MUERTE
player.volume_db = 0
# Configurar bus de audio
player.bus = "SFX"
# Reproducir y configurar eliminación automática
player.play()
player.finished.connect(func(): player.queue_free())
# Crear nuevo reproductor
var player = crear_audio_player()
# Asignar sonido según nombre
match nombre:
"disparo":
player.stream = SFX_DISPARO
player.volume_db = -5
"destruccion":
player.stream = SFX_DESTRUCCION
player.volume_db = -3
"muerte":
player.stream = SFX_MUERTE
player.volume_db = 0
# Configurar bus de audio
player.bus = "SFX"
# Reproducir y configurar eliminación automática
player.play()
player.finished.connect(func(): player.queue_free())
Disparo
Sonido corto y agudo
Destrucción
Explosión al impactar
Muerte
Efecto dramático
Extensible
Fácil de añadir nuevos sonidos