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

Erro de Sintaxe

Bem, estou encontrando um erro ao prosseguir na aula, o código está como o do professor mas ainda sim apresenta um erro aqui, vou deixar o código abaixo

O erro que acusa é esse: " p5.js says: rect() was expecting Number for the second parameter, received string instead. (on line 141 in about:srcdoc [about:srcdoc:141:5]). (http://p5js.org/reference/#/p5/rect) "

//variaveis bolinha
var xBolinha = 300;
var yBolinha = 200;
var diametro = 17;
var raio = diametro / 2;

//velocidade da bolinha
var velocidadeXBolinha = 6; 
var velocidadeYBolinha = 6;

//variaveis da raquete 
var xRaquete = 5;
var yRaquete = 150;
var comprimentoRaquete = 10;
var alturaRaquete = 90;

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

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

function draw() {
  background(0);
  mostraBolinha();
  movimentaBolinha();
  verificaBorda();
  mostraRaquete(xRaquete, yRaquete);
  mostraRaquete(xRaqueteOponente, yRaqueteOponente);
  movimentaRaquete();
  colisaoBolinhaRaquete();
  movimentaRaqueteOponente();
}

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

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

function verificaBorda(){
   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,comprimentoRaquete, alturaRaquete);
}

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

function colisaoBolinhaRaquete(){
  if(xBolinha - raio < xRaquete + comprimentoRaquete && yBolinha - raio < yRaquete + alturaRaquete && yBolinha + raio > yRaquete){
    velocidadeXBolinha *= -1;
  }
}

function movimentaRaqueteOponente(){
  velocidadeYDoOponente = yBolinha - yRaqueteOponente - comprimentoRaquete / 2 - 30;
  yRaqueteOponente += velocidadeYOponente
}
5 respostas

Fala Nayra, tudo bem?

Em variaveis do oponente, você esqueceu de colocar a velocidadeYOponente!

Espero ter ajudado :)

Mas nessa variavel nós não colocamos um valor pois é ela que iremos manipular.

essa variavel nós manipulamos ela na função "movimentaRaqueteOponente"

solução!

A sim, me desculpe. Então basta remover o = pois se ele se manter ali, o js não consiguira continuar com o restante do código!

ok, deu certo aqui!! Muito obrigadaa