Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Os sons não tocam.

Tentei carregar os sons das duas pastas, mas mesmo assim não funciona, quando a função preload e os sons são colocados no código o jogo nem abre, por isso comentei as linhas que eles aparecem. (também não aparece erro no console). Grata se alguém conseguir me ajudar.

function setup() {
  createCanvas(600, 400);
  //trilha.play();
}

/*function preload() {
  trilha = loadSound ("_trilha.pm3");
  ponto = loadSound("_ponto.mp3");
  raquetada = loadSound("_raquetada.mp3");
}*/

function draw() {
  background(0);
  mostraBolinha();
  movimentaBolinha();
  verificaColisaoBorda();
  mostraRaquete(xRaquete, yRaquete);
  movimentaMinhaRaquete();
  //verificaColisaoRaquete1();
  verificaColisaoRaquete(xRaquete,yRaquete);
  mostraRaquete(xRaqueteOponente,yRaqueteOponente);
  movimentaRaqueteOponente();
  verificaColisaoRaquete(xRaqueteOponente,yRaqueteOponente);
  incluiPlacar();
  marcaPonto();
}

function mostraBolinha() {
  circle(xBolinha,yBolinha,diametro);
}

function movimentaBolinha() {
  xBolinha += velocidadeXBolinha;
  yBolinha += velocidadeYBolinha;
}

function verificaColisaoBorda() {
  if (xBolinha + raio > width || xBolinha - raio < 0) {
    velocidadeXBolinha *= -1;
  }

  if (yBolinha + raio > height || yBolinha - raio < 0) {
    velocidadeYBolinha *= -1;
  }
}

function mostraRaquete(x,y) {
  rect(x, y, larguraRaquete, alturaRaquete);
}

function movimentaMinhaRaquete() {

  if(keyIsDown(UP_ARROW)) {
    yRaquete -= 10;
  }
  if(keyIsDown(DOWN_ARROW)) {
    yRaquete += 10;
  }
}

function verificaColisaoRaquete1() {

  if(xBolinha - raio < xRaquete + larguraRaquete
    && yBolinha - raio < yRaquete + alturaRaquete
    && yBolinha + raio > yRaquete) {
      velocidadeXBolinha *= -1; 
    raquetada.play();
  }

}

function verificaColisaoRaquete(x,y) {
  colidiu = collideRectCircle(x, y, larguraRaquete, alturaRaquete, xBolinha, yBolinha, raio);
  if (colidiu) {
    velocidadeXBolinha *= -1;
    //raquetada.play();
  }
}

function movimentaRaqueteOponente() {
  velocidadeYOponente = yBolinha - yRaqueteOponente - larguraRaquete / 2 + 30;
  yRaqueteOponente += velocidadeYOponente;

}

function incluiPlacar() {
  stroke(255);
  textAlign(CENTER);
  textSize(16);

  fill(color(255,140,0));
  rect(150,10,40,20);
  fill(255);
  text(meusPontos, 170, 26);

  fill(color(255,140,0));
  rect(450,10,40,20);
  fill(255);
  text(pontosOponente, 470, 26);
}

function marcaPonto() {
  if(xBolinha > 590) {
    meusPontos += 1;
    //ponto.play();
  }
  if(xBolinha < 10) {
    pontosOponente += 1;
    //ponto.play();
  }

}

// variaveis da bolinha
let xBolinha = 300;
let yBolinha = 200;
let diametro = 15;
let raio = diametro / 2;

// variaveis valocidade
let velocidadeXBolinha = 6;
let velocidadeYBolinha = 6;

// variaveis da raquete
let xRaquete = 5;
let yRaquete = 150;
let larguraRaquete = 10;
let alturaRaquete = 90;

// variaveis do oponente
let xRaqueteOponente = 585;
let yRaqueteOponente = 150;
let velocidadeYOponente;

// placar do jogo
let meusPontos = 0;
let pontosOponente = 0;

// sons do jogo
let raquetada;
let ponto;
let trilha;

let colidiu = false;
3 respostas

Boa tarde.

Eu também estou com o mesmo problema apaguei os sons e os códigos e mesmo assim meu jogo não abre mais sendo que está tudo certo ele fica em loading o tempo todo e não da erro algum!

Gyovana reparei em um das suas linhas um erro

" trilha = loadSound ("_trilha.pm3"); "

E pode estar dando erro por causa do "_" já que nos nomes dos arquivos não tem essa linguagem!

solução!

Boa tarde.

Resolvi o meu problema no meu caso não tinha carregado os arquivos completos por isso o jogo não iniciava por não achar os arquivos em questão.

E Gyovana nessa parte:

/*function preload() {
  trilha = loadSound ("_trilha.pm3");
  ponto = loadSound("_ponto.mp3");
  raquetada = loadSound("_raquetada.mp3");
}*/

Creio que se vc tirar o "_" na frente do nome do arquivo vai funcionar!!!

Espero ter ajudado!

não esqueça que na linha "trilha = loadSound ("_trilha.pm3");" o ".mp3" está digitado como ".pm3"

trilha = loadSound ("_trilha.pm3");