1
resposta

Como fazer para a Raquete não sair do Canvas

Tentei usar a seguinte logica porem está faltando algo.


  if (yNossaRaquete > 330 || yNossaRaquete < 0){
    velRaquete = 0;

Quando ela atinge as bordas ela realmente para porem não consigo fazer ela voltar a ter a velocidade anterior da variável, alguma dica sobre isso??

desde já agradeço Geral

1 resposta

Olá, Geison! Tudo certo?

Faltou você adicionar a informação para que a raquete volte. No caso, inserir uma multiplicação - 1. Dessa forma a raquete irá mudar de direção.

Um aluno aqui da Alura pensou na mesma ideia e criou uma excelente implementação para essa funcionalidade. Vou compartilhar o código dele aqui:

//Colisão das Raquetes com a borda da tela:
function colisaoBordaMinhaRaquete() {
  if (yRaquete + hRaquete > 400) {
    yRaquete -= 10;
  }
  if (yRaquete < 0) {
    yRaquete += 10;
  }
}

function colisaoBordaRaqueteOponente() {
  if (yRaqueteOponente + hRaquete > 400) {
    yRaqueteOponente -= 10;
  }
  if (yRaqueteOponente < 0) {
    yRaqueteOponente += 10;
  }
}

E o link para o projeto dele aqui:

Link para tópico - Exercício concluido Super Pong

Fico à disposição.

Um abraço e bons estudos!