1
resposta

loading infinito

fiz tudo certinho, pelaque eu saiba kkkkk

mas continuo no loading depois de colocar os sons

codigo abaixo


// variavel da bolinha
let xBolinha = 300;
let yBolinha = 200;
let diametro = 30;
let raio = diametro / 2;

//variavel da raquete
let xRaquete = 5;
let yRaquete = 150;
let larguraRaquete = 10;
let alturaRaquete = 100;

//variavel da raquete oponente
let xRaqueteOponente = 585;
let yRaqueteOponente = 150;
let velocidadeYraqueteOponente;

let colidiu = false;

//velocidade bolinha
let velocidadexBolinha = 5;
let velocidadeyBolinha = 5;

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

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

function preload() {
    trilha = loadSound("trilha-sonora.mp3");
    ponto = loadSound("ponto.mp3");
    raquetada = loadSound("raquetada.mp3");
}

function setup() {
  createCanvas(600, 400);
}

function draw() {
  background(0); //1 - Desenha o background
  posiçaoBolinha(); // 2 - Desenha a bolinha
  velocidadeBolinha(); //3 - Movimenta a Bolinha
  colisaoBorda(); // 4 - Verifica Colisão da bolinha
  posiçaoRaquete(xRaquete, yRaquete); // 5 - Desenho da raquete
  posiçaoRaquete(xRaqueteOponente, yRaqueteOponente); // 6 - raquete inimiga
  movimentaRaqueteoponente(); // 7 - movimento autmomatico da raquete inimiga
  movimentodaRaquete(); // 8 - movimento da raquete aliada
  verificaColisaoRaquete(xRaquete, yRaquete); // 9 - colisao da raquete aliada
  verificaColisaoRaquete(xRaqueteOponente, yRaqueteOponente); // 10 - colisao da raquete de outro codigi
  incluiPlacar(); // 11 - Adiciona o placar
  marcarPontos(); // 12 - Faz a marcação de pontos
}
function posiçaoBolinha() {
  circle(xBolinha, yBolinha, diametro);
}

function posiçaoRaquete(x, y) {
  rect(x, y, larguraRaquete, alturaRaquete);
}

function velocidadeBolinha() {
  xBolinha += velocidadexBolinha;
  yBolinha += velocidadeyBolinha;
}

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

  if (yBolinha + raio > height || yBolinha - raio < 0) {
    velocidadeyBolinha *= -1;
  }
}
function movimentodaRaquete() {
  if (keyIsDown(UP_ARROW)) {
    yRaquete -= 10;
  }
  if (keyIsDown(DOWN_ARROW)) {
    yRaquete += 10;
  }
}
function movimentaRaqueteoponente() {
  velocidadeYraqueteOponente =
    yBolinha - yRaqueteOponente - larguraRaquete / 2 - 30;
  yRaqueteOponente += velocidadeYraqueteOponente;
}
function colisaoRaquete() {
  if (
    xBolinha - raio < xRaquete + larguraRaquete &&
    yBolinha - raio < yRaquete + alturaRaquete &&
    yBolinha + raio > yRaquete
  )
    velocidadexBolinha *= -1;
}
function verificaColisaoRaquete(x, y) {
  colidiu = collideRectCircle(
    x,
    y,
    larguraRaquete,
    alturaRaquete,
    xBolinha,
    yBolinha,
    raio
  );
  if (colidiu) {
    velocidadexBolinha *= -1;
  }
}

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 marcarPontos() {
  if (xBolinha > 585) {
    meusPontos += 1;
  }
  if (xBolinha < 15) {
    pontosOponente += 1;
  }
}
1 resposta

Olá Guilherme, como vai?

Este problema pode estar sendo ocasionado por diversos fatores, tente:

  • Os nomes dos arquivos de sons são compatíveis com os escritos na função preload;
  • Remova e faça o upload de cada arquivo de som um por um, quando upamos muitos ao mesmo tempo alguns acabam não carregando completamente.

Caso isso não funcione, peço que por gentileza me envie o link do projeto para que possa analisar de forma mais ampla. Para enviar seu projeto do p5:

Para compartilhar o projeto no P5, siga os passos abaixo:

  • Com o p5 aberto e já logado, clique em File (arquivo)
  • Logo depois em Share(compartilhar)
  • Por fim, copie o terceiro link do "edit".
  • Cole o link na resposta do fórum

O gif ou uma série de capturas que dá uma impressão de vídeo, mostra uma tela do navegador que estar aberta na ferramenta p5.js, o gif serve  exemplificar para o aluno Gabriel Como ele pode compartilhar o link, o fundo da tela está todo acinzentado escuro em poucos segundos mostra algumas linhas de códigos que não é interessante para o aluno o mouse se direciona fazendo os seguintes comandos dentro da plataforma, aba arquivo que fica no topo da tela do p5, e depois compartilhar e clicar na terceira e última opção, nesse tutorial são abertos pequenos pop-ups que auxiliar a legibilidade do aluno para realizar os comandos, por fim o gif apresenta colando o link no fórum da comunidade alura

Se precisar de ajuda estamos à disposição, conte conosco!

Tenha um bom dia e bons estudos.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓