1
resposta

Meu codigo fica dando erro, mesmo quando copio e colo o código disponibilizado depois da própria aula

estava fazendo a aula de adicionar sons ao Pong no p5, inicialmente estava tudo certo, mas o jogo estava sem som... depois de muito tentar eu apaguei o codigo e peguei o codigo disponibilizado no final do modulo anterior para ver se nao era eu que tinha feito algo de errado, e depois disso comecou a dar erro em outras partes do codigo e n consigo entender o que pode ser

a mensagme que da eh essa: Error at line 96 in verificaColisaoRaquete() └[blob:https://preview.p5js.org/dce42507-562b-401f-8198-73a1894b28a5:52:25] Called from line 52 in draw()

esse eh o link pro meu codigo do jogo

https://editor.p5js.org/ricardocroce14/sketches/u_oXuFJ1a

1 resposta

Oi Ricardo! Tudo bem por aí?

Abri seu projeto e vi que já está funcionando normalmente! Fico muito feliz que tenha conseguido resolver o erro.

Agora, para adicionar os sons, os seguintes passos devem ser seguidos:

  • Crie uma variável para cada um dos arquivos de som

    //variáveis dos efeitos sonoros
    let trilha;
    let ponto;
    let raquetada;
  • Crie a função preload para carregar os sons e armazená-los dentro das variáveis

    function preload(){
    trilha = loadSound("trilha.mp3");
    ponto = loadSound("ponto.mp3");
    raquetada = loadSound("raquetada.mp3");
    } 
  • Na função setup(), adicione a linha trilha.loop()

    function setup() {
    createCanvas(600, 400);
    trilha.loop();  
    }
  • Na função marcaPonto(), adicione a linha ponto.play() em cada uma das condições

    function marcaPonto(){
    if (xBolinha > 585){
      meusPontos += 1;
      ponto.play();
    } 
    if (xBolinha < 15 ){
      pontosDoOponente += 1;
      ponto.play();
    }
    }
  • Na função verificaColisaoRaquete(), adicione a linha raquetada.play()

    function colisaoRaqueteBiblioteca(x, y) {
      colidiu = collideRectCircle(x, y, raqueteComprimento, raqueteAltura, xBolinha, yBolinha, raio);
      if (colidiu) {
          velocidadeXBolinha *= -1;
          raquetada.play();
      }
    }

Agora seu jogo está completo!

Parabéns por seu desempenho nesse curso, Ricardo! Estou a disposição.

Forte abraço.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!