Acabo de empezar a hacer un simple juego de plataformas con Phaser, soy nueva en esto.
Logré reproducir música, pero no puedo hacer que se repita y Google no me ha ayudado.
Aquí está el código de audio que estoy usando, ¿algún consejo?
game.load.audio('hotttt', ['assets/audio/hotttt.mp3', 'assets/audio/hotttt.ogg']);
music = game.add.audio('hotttt');
music.play();
5 respuestas
Deberá crear un nuevo objeto Phaser.Sound
y habilitar loop
.
game.load.audio('hotttt', ['assets/audio/hotttt.mp3', 'assets/audio/hotttt.ogg']);
// *true* param enables looping
music = new Phaser.Sound(game,'hotttt',1,true);
music.play();
Puede consultar la documentación: Phaser.Sound
La mejor solución que funciona para mí es esta:
music = game.add.audio('yourMusicFile');
music.loopFull()
De acuerdo con el docs para v2.4.4 (y lo probé con 2.6.1) puede pasar un argumento adicional a la función game.add.audio()
para el bucle
Ejemplo
game.load.audio('background', ['assets/audio/background.wav'])
const backgroundSound = game.add.audio('background', 0.5, true) // here "true" means to loop
backgroundSound.play()
Eso funcionó bien para mí
Cualquiera que esté mirando este hilo para Phaser 3.
Cargar música en preload ()
this.load.audio('musicaudio', 'assets/musicl.mp3');
Luego en su propia función o create ()
var music = this.sound.add('musicaudio');
music.setLoop(true);
music.play();
Todavía no entiendo la mecánica detrás de la inicialización de audio, pero para hacerlo en mi entorno Chrome tuve que configurar esto en la declaración de configuración inicial.
audio: {
disableWebAudio: true,
noAudio: false
},
PD Leí en alguna parte que no deberías usar mp3 para hacer un bucle, pero funciona bien para mí. Quizás haya una breve pausa.
Primero, carga el archivo de audio como lo hizo y luego crea la instancia para el audio en sí.
Ejemplo:
game.load.audio('background_music', ['assets/sounds/background_music.mp3', 'assets/sounds/background_music.wav']);
backgroundMusic = game.add.audio('background_music');
backgroundMusic.loop = true; // This is what you are lookig for
backgroundMusic.play();
¡Espero que ayude!
Preguntas relacionadas
Nuevas preguntas
javascript
Para preguntas sobre la programación en ECMAScript (JavaScript / JS) y sus diversos dialectos / implementaciones (excepto ActionScript). Incluya todas las etiquetas relevantes en su pregunta; por ejemplo, [node.js], [jquery], [json], etc.