2
respostas

[Dúvida] Duvida sobre a atuação do valor false na função de colisão

Fiquei com dúvida em relação ao significado da variável criada ao usar o código importado do GitHub na parte 06 da aula 03 do curso de lógica de programação:

se

let colidiu = false

então

function colisaoMinhaRaqueteBiblioteca(){
  colidiu =
  collideRectCircle(xRaquete, yRaquete, raqueteComprimento, raqueteAltura, xBolinha, yBolinha, raio);
  if (colidiu){
    velocidadeXBolinha *= -1;
  }

está dizendo que:

function colisaoMinhaRaqueteBiblioteca(){
  false =
  collideRectCircle(xRaquete, yRaquete, raqueteComprimento, raqueteAltura, xBolinha, yBolinha, raio);
  if (false){
    velocidadeXBolinha *= -1;
  }

certo?

qual a função do valor "false" aqui? Não foi explicado na aula o porquê o código copiado é como é, e talvez seja assunto para um momento mais avançado, mas fiquei intrigado.

Também não entendi como essa função está atuando, ainda que entenda seu propósito, talvez esteja relacionado ao código importado no GitHub e seja um assunto para um momento posterior do aprendizado.

2 respostas

Érico,

Ao usar if( variável ) o if está testando se o retorno dela é TRUE e não FALSE. Ao usar if(colidiu) ele está testando se colidiu é idêntico a TRUE.

Para testar se é FALSE, teria que ser utilizado if(!colidiu).

Nessa questão ele quer testar se realmente colidiu, ou seja, se é true. Se for, ele faz a mudança da direção.

Eu, quando tenho essas dúvidas, crio um código simples pra testar esse tipo de coisa que pode criar dúvida. Por exemplo:

var teste = true; if(teste) { alert("é true") } else { alert("é false") }

Esse código comprova que ao usa if(teste) na verdade está sendo testado se é TRUE.

Olá. Aparentemente fiz a importação do GitHub certinha, mais esta dando erro na linha 75 no 'colidiu'. Alguém saberia me informar o que pode estar ocorrendo? Obrigada!Isso que aparece [blob: https://preview.p5js.org/52947f43-b43f-4089-b243-28744233b1b8:75:3] Erro na linha 75 em colisaoMinhaRaqueteBiblioteca() └[blob:https://preview.p5js.org/52947f43-b43f-4089-b243-28744233b1b8:31:3] Chamado da linha 31 em draw()