Vamos falar sobre condições mais complexas que você pode checar com seus programas.
Para demonstrar, configurei a tela para parecer com um antigo jogo que eu jogava.
Foursquare.
Há 4 quadrados (ele tem um bom nome), e você fica em um e quica a bola nos outros.
Agora vou desenhar uma elipse onde o meu mouse estiver, para parecer a nossa bola.
O que eu quero fazer é realçar o quadrado em que a bola está,
desenhando um retângulo branco em cima dele.
Eu sei que preciso de um comando IF para fazer isso,
porque só quero fazer uma vez de cada vez, só quando eu estiver naquele retângulo.
Então vamos começar desenhando esse retângulo.
Então vou copiá-lo daqui, mas lhe dar um preenchimento diferente, um branco.
Agora vamos envolvê-lo com um IF.
Você vê o preenchimento automático das chaves para mim para eu mover para dentro.
Então quando eu quero mostrar aquele retângulo?
Eu quero fazer isso quando o x do mouse for menos que 200 (mouseX < 200).
Assim funciona, mas, em seguida, se eu descer aqui, ele ainda está mostrando.
Então, eu também preciso verificar o mouseY.
Como posso verificar ambas as coisas?
É por isso que temos o operador "AND" (E)
O operador AND usamos quando queremos verificar várias condições.
Só escrevemos '&&' e então depois a nossa próxima condição, então "mouseY < 200"
Por isso, não se acende mais aqui e acende aqui!
Vamos fazer o seguinte quadrado, só para provar que isso funciona.
Só temos que mudar algumas coisas.
Tomamos este retângulo e mudamos as condições do que não está iluminando.
Assim, desta vez, mouseX precisa ser maior que 200 e mouseY ainda menor do que 200.
Lindo, olha isso!
No foursquare, sempre que a bola atinge as bordas (essas linhas no meio e os cantos)
sempre gritamos "EdgeBall".
Eu quero fazer isso aqui também. Vamos começar escrevendo "EDGE BALLL!!!!".
Escrevemos ele no meio e deixamos ele vermelho.
Mas só quero que isso aconteça se eu estiver nas bordas.
Então, estamos adicionando o nosso if
e mover este código pra dentro dele.
Quando eu quero que isso aconteça?
Bem, há bordas no meio, de modo que o meio é quando o "mouseX == 200".
Tudo bem, vamos ver. Eu recebo a Edge Ball...
Lá vamos nós! EDGE BALL
Assim ele funciona nesta linha média aqui.
Mas eu também quero que ele funcione nessa linha aqui.
Nesse caso, eu quero mouseY == 200, porque isso é o que essa linha do meio é.
Não deu certo. Não está funcionando nada.
Uma coisa funciona, apenas no centro.
Isso é porque eu usei AND, portanto só vai funcionar se AMBOS forem verdadeiras,
e isso só vai acontecer no centro.
O que eu quero dizer é que QUALQUER um desses são verdadeiros.
Então, usamos o operador "OR" (OU).
Assim, o operador OR se parece com isso: "||".
Chamamos esse símbolo de barra vertical, e você provavelmente nunca usou antes.
Você tem que procurá-lo em seu teclado, geralmente ao lado do 'Shift' esquerdo.
Espero que você ache em seu teclado.
Tudo bem? Legal, então agora vamos ver se funciona...
Tudo certo. Funciona aqui, lá e depois funciona lá...
Podemos continuar e adicionar mais condições aqui
com o AND e OR, você pode ter muitos deles como você quiser.
Se você precisa verificar 60 condições diferentes, você pode fazer isso.
Porque nós não cuidamos das suas bordas assim.
Vamos dizer que se mouseX é menor que 3.
Então, deve ser... Lá vamos nós, com pouca borda.
Muito bom.
Ou mouseX é maior do que 397 (mouseX > 397)
Lá vamos nós... Que bonito!
Então, vamos continuar fazendo isso para todas as bordas.
Estes são o AND (&&) e OR (||) e agora você pode ver como pode construir
condições muito mais complexas em seus programas.
E isso é bom, porque o mundo é um lugar complexo.
Traduzido por [Fernando dos Reis] Revisado por [Paulo Trentin]