1
00:00:01,005 --> 00:00:04,991
Vamos falar sobre condições mais complexas
que você pode checar com seus programas.
2
00:00:04,991 --> 00:00:08,801
Para demonstrar, configurei a tela para
parecer com um antigo jogo que eu jogava.
3
00:00:08,801 --> 00:00:09,628
Foursquare.
4
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.
5
00:00:14,964 --> 00:00:18,819
Agora vou desenhar uma elipse onde o meu
mouse estiver, para parecer a nossa bola.
6
00:00:19,114 --> 00:00:22,030
O que eu quero fazer é realçar o
quadrado em que a bola está,
7
00:00:22,030 --> 00:00:24,086
desenhando um retângulo branco
em cima dele.
8
00:00:24,086 --> 00:00:26,818
Eu sei que preciso de um comando IF
para fazer isso,
9
00:00:26,818 --> 00:00:30,670
porque só quero fazer uma vez de cada vez,
só quando eu estiver naquele retângulo.
10
00:00:31,520 --> 00:00:34,472
Então vamos começar desenhando
esse retângulo.
11
00:00:35,102 --> 00:00:41,033
Então vou copiá-lo daqui, mas lhe dar um
preenchimento diferente, um branco.
12
00:00:41,753 --> 00:00:43,655
Agora vamos envolvê-lo com um IF.
13
00:00:45,055 --> 00:00:50,281
Você vê o preenchimento automático das
chaves para mim para eu mover para dentro.
14
00:00:51,331 --> 00:00:53,964
Então quando eu quero mostrar
aquele retângulo?
15
00:00:54,027 --> 00:01:00,891
Eu quero fazer isso quando o x do mouse
for menos que 200 (mouseX < 200).
16
00:01:02,411 --> 00:01:07,072
Assim funciona, mas, em seguida, se eu
descer aqui, ele ainda está mostrando.
17
00:01:07,072 --> 00:01:10,348
Então, eu também preciso
verificar o mouseY.
18
00:01:10,348 --> 00:01:13,039
Como posso verificar ambas as coisas?
19
00:01:13,099 --> 00:01:15,058
É por isso que temos o operador "AND" (E)
20
00:01:15,058 --> 00:01:18,108
O operador AND usamos quando queremos
verificar várias condições.
21
00:01:18,108 --> 00:01:26,190
Só escrevemos '&&' e então depois a nossa
próxima condição, então "mouseY < 200"
22
00:01:26,190 --> 00:01:30,324
Por isso, não se acende mais
aqui e acende aqui!
23
00:01:31,783 --> 00:01:36,185
Vamos fazer o seguinte quadrado, só para
provar que isso funciona.
24
00:01:36,185 --> 00:01:38,682
Só temos que mudar algumas coisas.
25
00:01:38,682 --> 00:01:45,394
Tomamos este retângulo e mudamos as
condições do que não está iluminando.
26
00:01:45,394 --> 00:01:52,962
Assim, desta vez, mouseX precisa ser maior
que 200 e mouseY ainda menor do que 200.
27
00:01:53,822 --> 00:01:56,289
Lindo, olha isso!
28
00:01:56,989 --> 00:02:02,252
No foursquare, sempre que a bola atinge as
bordas (essas linhas no meio e os cantos)
29
00:02:02,298 --> 00:02:04,511
sempre gritamos "EdgeBall".
30
00:02:04,819 --> 00:02:10,392
Eu quero fazer isso aqui também. Vamos
começar escrevendo "EDGE BALLL!!!!".
31
00:02:11,072 --> 00:02:15,582
Escrevemos ele no meio e deixamos
ele vermelho.
32
00:02:16,842 --> 00:02:19,775
Mas só quero que isso aconteça se
eu estiver nas bordas.
33
00:02:19,775 --> 00:02:22,511
Então, estamos adicionando o nosso if
34
00:02:22,511 --> 00:02:25,573
e mover este código pra dentro dele.
35
00:02:27,173 --> 00:02:29,600
Quando eu quero que isso aconteça?
36
00:02:29,615 --> 00:02:36,936
Bem, há bordas no meio, de modo que o meio
é quando o "mouseX == 200".
37
00:02:36,936 --> 00:02:40,404
Tudo bem, vamos ver.
Eu recebo a Edge Ball...
38
00:02:40,404 --> 00:02:43,817
Lá vamos nós!
EDGE BALL
39
00:02:46,047 --> 00:02:49,403
Assim ele funciona nesta linha média aqui.
40
00:02:49,403 --> 00:02:52,720
Mas eu também quero que ele funcione
nessa linha aqui.
41
00:02:54,220 --> 00:03:02,820
Nesse caso, eu quero mouseY == 200, porque
isso é o que essa linha do meio é.
42
00:03:02,820 --> 00:03:08,315
Não deu certo. Não está funcionando nada.
43
00:03:08,315 --> 00:03:11,010
Uma coisa funciona, apenas no centro.
44
00:03:11,010 --> 00:03:14,914
Isso é porque eu usei AND, portanto só vai
funcionar se AMBOS forem verdadeiras,
45
00:03:14,914 --> 00:03:18,084
e isso só vai acontecer no centro.
46
00:03:18,084 --> 00:03:22,447
O que eu quero dizer é que QUALQUER um
desses são verdadeiros.
47
00:03:22,447 --> 00:03:25,220
Então, usamos o operador "OR" (OU).
48
00:03:25,220 --> 00:03:28,138
Assim, o operador OR se parece
com isso: "||".
49
00:03:28,138 --> 00:03:32,283
Chamamos esse símbolo de barra vertical,
e você provavelmente nunca usou antes.
50
00:03:32,953 --> 00:03:36,705
Você tem que procurá-lo em seu teclado,
geralmente ao lado do 'Shift' esquerdo.
51
00:03:36,865 --> 00:03:39,424
Espero que você ache em seu teclado.
52
00:03:39,434 --> 00:03:42,465
Tudo bem? Legal, então agora vamos
ver se funciona...
53
00:03:42,465 --> 00:03:46,761
Tudo certo. Funciona aqui, lá e depois
funciona lá...
54
00:03:46,781 --> 00:03:49,531
Podemos continuar e adicionar
mais condições aqui
55
00:03:49,531 --> 00:03:52,963
com o AND e OR, você pode ter muitos
deles como você quiser.
56
00:03:52,963 --> 00:03:56,351
Se você precisa verificar 60 condições
diferentes, você pode fazer isso.
57
00:03:56,351 --> 00:03:59,320
Porque nós não cuidamos das
suas bordas assim.
58
00:03:59,320 --> 00:04:05,462
Vamos dizer que se mouseX é menor que 3.
59
00:04:05,462 --> 00:04:08,236
Então, deve ser... Lá vamos nós,
com pouca borda.
60
00:04:08,236 --> 00:04:09,330
Muito bom.
61
00:04:09,330 --> 00:04:15,557
Ou mouseX é maior do que 397
(mouseX > 397)
62
00:04:15,557 --> 00:04:17,734
Lá vamos nós...
Que bonito!
63
00:04:17,734 --> 00:04:21,645
Então, vamos continuar fazendo isso
para todas as bordas.
64
00:04:21,645 --> 00:04:25,196
Estes são o AND (&&) e OR (||) e agora
você pode ver como pode construir
65
00:04:25,196 --> 00:04:28,094
condições muito mais complexas
em seus programas.
66
00:04:28,094 --> 00:04:30,518
E isso é bom, porque o mundo
é um lugar complexo.
67
00:04:30,518 --> 00:04:32,000
Traduzido por [Fernando dos Reis]
Revisado por [Paulo Trentin]