Hasta ahora, he intentado usar esta función para crear un nuevo elemento de audio cada vez que se llama:
function createAudio(src, type){ var sound = new Audio(); var source = document.createElement('source'); source.type = type; source.src = src; sound.appendChild('source'); sound.play(); };De esa forma, si desea reproducir un solo archivo de audio llamado, por ejemplo, "gunshot.mp3", pero varias veces, puede usar esta línea de código:
createSound('gunshot.mp3','audio/mpeg');Esto funciona bien, pero lo que sucederá es que cuando el sonido se cargue varias veces, dejará de funcionar por completo. Cada vez que vuelves a cargar el juego, es como tirar los dados para ver qué sonidos se ejecutarán o no, e incluso cuando se ejecuta es irregular e inconsistente.
Supongo que tiene algo que ver con la sobrecarga de la página html con nuevos elementos, entonces, ¿hay alguna forma de borrar los elementos de vez en cuando, como borrar una matriz de partículas para que no se alargue demasiado? ¿O es solo que mi función no es correcta en primer lugar?
¡Gracias!