WEBVTT
00:00:01.005 --> 00:00:04.991
Vamos falar sobre condições mais complexas
que você pode checar com seus programas.
00:00:04.991 --> 00:00:08.801
Para demonstrar, configurei a tela para
parecer com um antigo jogo que eu jogava.
00:00:08.801 --> 00:00:09.628
Foursquare.
00:00:09.628 --> 00:00:14.531
Há 4 quadrados (ele tem um bom nome), e
você fica em um e quica a bola nos outros.
00:00:14.964 --> 00:00:18.819
Agora vou desenhar uma elipse onde o meu
mouse estiver, para parecer a nossa bola.
00:00:19.114 --> 00:00:22.030
O que eu quero fazer é realçar o
quadrado em que a bola está,
00:00:22.030 --> 00:00:24.086
desenhando um retângulo branco
em cima dele.
00:00:24.086 --> 00:00:26.818
Eu sei que preciso de um comando IF
para fazer isso,
00:00:26.818 --> 00:00:30.670
porque só quero fazer uma vez de cada vez,
só quando eu estiver naquele retângulo.
00:00:31.520 --> 00:00:34.472
Então vamos começar desenhando
esse retângulo.
00:00:35.102 --> 00:00:41.033
Então vou copiá-lo daqui, mas lhe dar um
preenchimento diferente, um branco.
00:00:41.753 --> 00:00:43.655
Agora vamos envolvê-lo com um IF.
00:00:45.055 --> 00:00:50.281
Você vê o preenchimento automático das
chaves para mim para eu mover para dentro.
00:00:51.331 --> 00:00:53.964
Então quando eu quero mostrar
aquele retângulo?
00:00:54.027 --> 00:01:00.891
Eu quero fazer isso quando o x do mouse
for menos que 200 (mouseX < 200).
00:01:02.411 --> 00:01:07.072
Assim funciona, mas, em seguida, se eu
descer aqui, ele ainda está mostrando.
00:01:07.072 --> 00:01:10.348
Então, eu também preciso
verificar o mouseY.
00:01:10.348 --> 00:01:13.039
Como posso verificar ambas as coisas?
00:01:13.099 --> 00:01:15.058
É por isso que temos o operador "AND" (E)
00:01:15.058 --> 00:01:18.108
O operador AND usamos quando queremos
verificar várias condições.
00:01:18.108 --> 00:01:26.190
Só escrevemos '&&' e então depois a nossa
próxima condição, então "mouseY < 200"
00:01:26.190 --> 00:01:30.324
Por isso, não se acende mais
aqui e acende aqui!
00:01:31.783 --> 00:01:36.185
Vamos fazer o seguinte quadrado, só para
provar que isso funciona.
00:01:36.185 --> 00:01:38.682
Só temos que mudar algumas coisas.
00:01:38.682 --> 00:01:45.394
Tomamos este retângulo e mudamos as
condições do que não está iluminando.
00:01:45.394 --> 00:01:52.962
Assim, desta vez, mouseX precisa ser maior
que 200 e mouseY ainda menor do que 200.
00:01:53.822 --> 00:01:56.289
Lindo, olha isso!
00:01:56.989 --> 00:02:02.252
No foursquare, sempre que a bola atinge as
bordas (essas linhas no meio e os cantos)
00:02:02.298 --> 00:02:04.511
sempre gritamos "EdgeBall".
00:02:04.819 --> 00:02:10.392
Eu quero fazer isso aqui também. Vamos
começar escrevendo "EDGE BALLL!!!!".
00:02:11.072 --> 00:02:15.582
Escrevemos ele no meio e deixamos
ele vermelho.
00:02:16.842 --> 00:02:19.775
Mas só quero que isso aconteça se
eu estiver nas bordas.
00:02:19.775 --> 00:02:22.511
Então, estamos adicionando o nosso if
00:02:22.511 --> 00:02:25.573
e mover este código pra dentro dele.
00:02:27.173 --> 00:02:29.600
Quando eu quero que isso aconteça?
00:02:29.615 --> 00:02:36.936
Bem, há bordas no meio, de modo que o meio
é quando o "mouseX == 200".
00:02:36.936 --> 00:02:40.404
Tudo bem, vamos ver.
Eu recebo a Edge Ball...
00:02:40.404 --> 00:02:43.817
Lá vamos nós!
EDGE BALL
00:02:46.047 --> 00:02:49.403
Assim ele funciona nesta linha média aqui.
00:02:49.403 --> 00:02:52.720
Mas eu também quero que ele funcione
nessa linha aqui.
00:02:54.220 --> 00:03:02.820
Nesse caso, eu quero mouseY == 200, porque
isso é o que essa linha do meio é.
00:03:02.820 --> 00:03:08.315
Não deu certo. Não está funcionando nada.
00:03:08.315 --> 00:03:11.010
Uma coisa funciona, apenas no centro.
00:03:11.010 --> 00:03:14.914
Isso é porque eu usei AND, portanto só vai
funcionar se AMBOS forem verdadeiras,
00:03:14.914 --> 00:03:18.084
e isso só vai acontecer no centro.
00:03:18.084 --> 00:03:22.447
O que eu quero dizer é que QUALQUER um
desses são verdadeiros.
00:03:22.447 --> 00:03:25.220
Então, usamos o operador "OR" (OU).
00:03:25.220 --> 00:03:28.138
Assim, o operador OR se parece
com isso: "||".
00:03:28.138 --> 00:03:32.283
Chamamos esse símbolo de barra vertical,
e você provavelmente nunca usou antes.
00:03:32.953 --> 00:03:36.705
Você tem que procurá-lo em seu teclado,
geralmente ao lado do 'Shift' esquerdo.
00:03:36.865 --> 00:03:39.424
Espero que você ache em seu teclado.
00:03:39.434 --> 00:03:42.465
Tudo bem? Legal, então agora vamos
ver se funciona...
00:03:42.465 --> 00:03:46.761
Tudo certo. Funciona aqui, lá e depois
funciona lá...
00:03:46.781 --> 00:03:49.531
Podemos continuar e adicionar
mais condições aqui
00:03:49.531 --> 00:03:52.963
com o AND e OR, você pode ter muitos
deles como você quiser.
00:03:52.963 --> 00:03:56.351
Se você precisa verificar 60 condições
diferentes, você pode fazer isso.
00:03:56.351 --> 00:03:59.320
Porque nós não cuidamos das
suas bordas assim.
00:03:59.320 --> 00:04:05.462
Vamos dizer que se mouseX é menor que 3.
00:04:05.462 --> 00:04:08.236
Então, deve ser... Lá vamos nós,
com pouca borda.
00:04:08.236 --> 00:04:09.330
Muito bom.
00:04:09.330 --> 00:04:15.557
Ou mouseX é maior do que 397
(mouseX > 397)
00:04:15.557 --> 00:04:17.734
Lá vamos nós...
Que bonito!
00:04:17.734 --> 00:04:21.645
Então, vamos continuar fazendo isso
para todas as bordas.
00:04:21.645 --> 00:04:25.196
Estes são o AND (&&) e OR (||) e agora
você pode ver como pode construir
00:04:25.196 --> 00:04:28.094
condições muito mais complexas
em seus programas.
00:04:28.094 --> 00:04:30.518
E isso é bom, porque o mundo
é um lugar complexo.
00:04:30.518 --> 00:04:32.000
Traduzido por [Fernando dos Reis]
Revisado por [Paulo Trentin]