Terminei o projeto e coloquei uma pontuação final pra informar se o usuário ganhou ou perdeu, porém o som no final da um bug e eu não consegui arrumar. Tentei colocar um stop mas não funcionou. Estou aberto a sugestões.
Terminei o projeto e coloquei uma pontuação final pra informar se o usuário ganhou ou perdeu, porém o som no final da um bug e eu não consegui arrumar. Tentei colocar um stop mas não funcionou. Estou aberto a sugestões.
Olá, Everton! Como você está?
Seu jogo está incrível, parabéns pelas novas implementações, e pelo empenho também!
Testei seu jogo e percebi que faltou apenas inserir uma instrução para interromper a música com o método stop(). Vou deixar a função final() completa com a pequena modificação para você testar também, ok?
function final() {
if(meusPontos == 100) {
textSize(20);
textFont('Press Start 2P')
fill(255);
text('Você venceu !!!', 300, 100);
trilha.stop();
vitoria.play();
vitoria.stop();
xBolinha = 300;
yBolinha = 200;
velocidadeXBolinha = 0;
velocidadeYBolinha = 0;
}
if(pontosOponente == 100) {
textSize(20);
textFont('Press Start 2P')
fill(255);
text('Você perdeu !!!', 300, 100);
trilha.stop();
perdeu.play();
perdeu.stop(); //bem aqui inseri o stop().
xBolinha = 300;
yBolinha = 200;
velocidadeXBolinha = 0;
velocidadeYBolinha = 0;
}
}
Espero que as informações tenham ajudado!
Um forte abraço e bons estudos!
Olá Camila, obrigado pela dica.
Porém ao adicionar o perdeu.stop() ele não toca o som perdeu.mp3.
Oi, Everton! Desculpe-me, nem notei!
Realmente o som estava com problema e resolvi interrompendo a execução da function final() na draw() com o método noLoop(). Vou deixar o código aqui.
function final() {
if(meusPontos == 100) {
textSize(20);
textFont('Press Start 2P')
fill(255);
text('Você venceu !!!', 300, 100);
trilha.stop();
vitoria.play();
xBolinha = 300;
yBolinha = 200;
velocidadeXBolinha = 0;
velocidadeYBolinha = 0;
}
if(pontosOponente == 100) {
textSize(20);
textFont('Press Start 2P')
fill(255);
trilha.stop();
text('Você perdeu !!!', 300, 100);
xBolinha = 300;
yBolinha = 200;
velocidadeXBolinha = 0;
velocidadeYBolinha = 0;
perdeu.play();
noLoop(); //inseri a interrupção aqui
}
}
Caso tenha alguma outra dúvida, segue o link com a cópia do seu projeto e algumas modificações que fiz:
https://editor.p5js.org/miasensei/sketches/oknnmz0EN
Espero que tenha ajudado!
Um abraço e até breve!!
Obrigado pela ajuda