0
respostas

load infinito

Olá mais uma vez colegas do Fórum, como citado no meu titulo estou com problemas, de novo. Dessa vez o meu problema é um pouco diferente, quando eu baixei o arquivo do projeto em meu pc, o p5 não o reconheceu, isso me fez ter que procurar imagens e sons em na internet. E agora pelo fato do meu projeto seguir "diferente" com o que é passado nas aulas, eu entrei no loading infinito.

segue meu projeto.

https://editor.p5js.org/alessandragrgr/sketches/8Z6ZQeMD0

e meus códigos.

function setup() {
  createCanvas(600, 400);
  somDaTrilha.loop();
}

function draw() {
  background(imagemDaEstrada);
  mostraAtor();
  mostraCarro();
  movimentaCarro();
  movimentaAtor();
  voltaPosicaoInicialDoCarro();
  verificaColisao();
  incluiPontos();
  marcaPonto();
}

//código do ator

let xAtor = 100;
let yAtor = 369;
let colisao = false;
let meusPontos = 0;

function mostraAtor(){
    image(imagemDoAtor, xAtor, yAtor, 30, 30);
}

function movimentaAtor() {
  if (keyIsDown(UP_ARROW)) {
    yAtor -= 3;
  }
  if (keyIsDown(DOWN_ARROW)) {
   if (podeSeMover()){
    yAtor += 3;
   }
  }
}

function verificaColisao() {

  for (let i = 0; i < imagemCarros.length; i++) {
    colisao = collideRectCircle(xCarros[i], yCarros[i], comprimentoCarro, alturaCarro, xAtor, yAtor, 15);
    if (colisao){
      voltaAtorAoInicio();
      if (meusPontos > 0){
      meusPontos -= 1;
    }
   }  
  }
}

function voltaAtorAoInicio(){
  yAtor = 369;

}
function incluiPontos(){
  textAlign(CENTER);
  textSize(25);
  fill(color(0,250,154))
  text(meusPontos, width / 5, 25);
}
function marcaPonto(){
  if (yAtor < 13){
    meusPontos +=1;
    voltaAtorAoInicio();
  }
}

function podeSeMover(){
  return yAtor < 369;
}

//código do carro
 //lista da posição dos carros

let xCarros = [600, 600, 600, 600, 600, 900, 900, 900, 900, 900];
let yCarros = [50, 96, 150, 215, 300, 50, 96, 150, 215, 300];
let velocidadeCarros = [2.5, 4, 5.4, 3.5, 4.9, 2.5, 4, 5.4, 3.5, 4.9];
let comprimentoCarro = 65;
let alturaCarro = 35;


function mostraCarro() {
  for (let i = 0; i < imagemCarros.length; i++){
    image(imagemCarros[i], xCarros[i], yCarros[i],  comprimentoCarro, alturaCarro);
  } 
}

function movimentaCarro() {
 for (let i = 0; i < imagemCarros.length; i++){
   xCarros[i] -= velocidadeCarros[i];
  }
}

function voltaPosicaoInicialDoCarro() {
  for (let i = 0; i < imagemCarros.length; i++){
     if (passouTodaATela(xCarros[i])) {
         xCarros[i] = 600;
      }
   }
}

function passouTodaATela(xCarro) {
  return xCarro < - 60;
}

//imagens e sons do jogo

let imagemDaEstrada;
let imagemDoAtor;
let imagemCarro;
let imagemCarro2;
let imagemCarro3;
let imagemCarro4;
let imagemCarro5;

//sons do jogo
let somDaTrilha;
let somDaColisao;
let somDoPonto;

function preload(){
  imagemDaEstrada = loadImage("imagens/estrada 03.jpg")
  imagemDoAtor = loadImage("imagens/ator 03.jpg")
  imagemCarro = loadImage("imagens/carro-002.jpg")
  imagemCarro2 = loadImage("imagens/carro-002.jpg")
  imagemCarro3 = loadImage("imagens/carro-002.jpg")
  imagemCarro4 = loadImage("imagens/carro-002.jpg")
  imagemCarro5 = loadImage("imagens/carro-002.jpg")
  imagemCarros = [imagemCarro, imagemCarro2, imagemCarro3, imagemCarro4, imagemCarro5, imagemCarro, imagemCarro2, imagemCarro3, imagemCarro4, imagemCarro5];

  somDaTrilha = loadSound("sons/Formula1.mp3");
  somDaColisa = loadSound("sons/Pacman.mp3");
  somDoPonto = loadSound("sons/Coin.mp3");
}