Bom dia, no meu código não aparece erro, mas não aparece a raquete do oponente, poderiam me ajudar? Obrigada :) https://editor.p5js.org/Lindsayncastro/sketches/WNt-vLUQk
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Bom dia, no meu código não aparece erro, mas não aparece a raquete do oponente, poderiam me ajudar? Obrigada :) https://editor.p5js.org/Lindsayncastro/sketches/WNt-vLUQk
Olá, Lindsay! Espero que esteja tudo bem por aí!
Desculpe a demora em responder você!
Observei seu código e identifiquei dois erros. O primeiro é que você inseriu um valor muito alto no xRaqueteOponente, e ele é desenhado fora da tela. A let xRaqueteOponente = 855; é maior do que a área de preview, que está na function Canvas() e tem o valor de largura 600 por altura 400, createCanvas(600, 400) .
Outro ponto de atenção é que você chamou duas vezes a mostraRaquete() e depois inseriu os parâmetros na mostraRaquete(xRaqueteOponente, yRaqueteOponente). No entanto a mostraRaquete() já estava com os parâmetros definidos dentro do escopo da função e isso gera um conflito de informações.
Modifiquei alguns elementos no seu código para que você possa visualizar e compreender melhor,
//variáveis da raquete
let xRaquete = 5;
let yRaquete = 150;
let raqueteComprimento = 10;
let raqueteAltura = 90;
//variáveis da raquete do oponete:
let xRaqueteOponente = 580;
let yRaqueteOponente = 150;
function setup() {
createCanvas(600, 400);
}
function draw() {
background(0);
mostraBolinha();
movimentaBolinha();
verificaColisaoBorda();
mostraRaquete();
mostraRaqueteOponente();
movimentaMinhaRaquete();
verificaColisaoRaquete();
}
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(){
rect(xRaquete, yRaquete, raqueteComprimento,
raqueteAltura);
}
function mostraRaqueteOponente() {
rect(xRaqueteOponente, yRaqueteOponente, raqueteComprimento, raqueteAltura);
}
function movimentaMinhaRaquete(){
if (keyIsDown(UP_ARROW)){
yRaquete -= 10;
}
if (keyIsDown(DOWN_ARROW)){
yRaquete += 10;
}
}
function verificaColisaoRaquete(){
if (xBolinha - raio < xRaquete + raqueteComprimento &&
yBolinha - raio < yRaquete + raqueteAltura &&
yBolinha + raio > yRaquete){
velocidadeXBolinha *= -1;
}
}Espero que as informações tenham ajudado!
Um abraço e bons estudos!