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

Minha raquete não se move.

Boa tarde, pessoal!

Li e reli as dúvidas do fórum pra ver se alguém tinha algum problema parecido com o meu e vi que sim. Tentei as soluções e nada funcionou. Testei em outros navegadores, também sem sucesso. Alguém poderia me dar uma luz?

//variaveis ball
let xBall = 300;
let yBall = 200;
let diametro = 20;
let raio = diametro / 2;
let velXBall = 6;
let velYBall = 6;

//variaveis pad
let xPad = 5;
let yPad = 150;
let widthPad = 10;
let heightPad = 90;


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

function draw() {
  background(0)
  showBall();
  moveBall();
  verifyEdges();
  showPad();
  movePadP1();
}

function showBall(){
  circle(xBall, yBall, diametro);
}

function moveBall(){
    xBall += velXBall;
    yBall += velYBall;
}

function verifyEdges(){


    if (xBall + raio > width || xBall - raio < 0){
    velXBall *= -1;
  }
    if (yBall + raio > height || yBall - raio < 0){
    velYBall *= -1;
  }
}

function showPad(){
  rect(5, 150, 10, 90);
}

function movePadP1(){
  if (keyIsDown(UP_ARROW)) {
    yPad -= 10;
  }
    if (keyIsDown(DOWN_ARROW)) {
    yPad += 10;
  }
}
3 respostas
solução!

Olá, Leonardo.

O problema está na sua função

function showPad(){
  rect(5, 150, 10, 90);
}

O certo seria

function showPad(){
  rect(xPad, yPad, widthPad, heightPad);
}

Isso porque ao colocar os valores dentro da sua função showPad, você não vai estar mexendo na variável que criou lá em cima, a yPad. Na função de movimentar, você usa o yPad ganhando ou perdendo posição no eixo Y.

boa noite descobri o problema veja se o seu navegador nao esta com algum bloqueio

o que vc faz clica na imagem criada ou seja em cima da barrinha que ela ira funcionar

caso nao funcione tem que editar o host do windows e mudar os paramentros para ele funcionar

Obrigadíssimo, Douglas!