0:00:01.860,0:00:10.076 Então nós já criamos essa variável legal para os olhos do Winston, a qual tem sido realmente útil porque nos salvou de digitar muito, quando queremos mudar o tamanho dos olhos 0:00:10.076,0:00:15.497 Lembre-se que antes tínhamos que digitar o mesmo número quatro vezes, sempre que queríamos mudar o tamanhos dos olhos dele 0:00:15.497,0:00:18.940 Mas nós podemos usar variáveis para substituir números quando eles não são iguais? 0:00:18.940,0:00:21.496 E se eu quisesse mover o Winston um pouquinho? 0:00:21.496,0:00:27.472 Nós poderíamos mudar cada uma dessas coordenadas x, mas elas não são iguais, então eu não posso substituí-las com alguma variável 0:00:27.472,0:00:33.469 Mas espere! Uma vez que eu atribuir um número a uma variável, eu posso usar essa variável exatamente como se fosse aquele número 0:00:33.469,0:00:36.693 O que significa, eu posso usar variáveis em expressões matemáticas 0:00:36.693,0:00:40.462 Que tal isso, vamos criar uma variável para a posição x de Winston 0:00:40.462,0:00:43.024 Vamos chamar de "var x" 0:00:43.024,0:00:47.744 Simples o suficiente, okay, agora vamos da-la o valor da coordenada x da cara do Winston 0:00:47.744,0:00:51.339 A cara dele está sendo desenhada na coordenada x 200 0:00:51.339,0:00:54.423 Então nós dizemos var x recebe 200 (var x = 200;) 0:00:55.053,0:01:02.398 Agora eu posso substituir esse número com a minha nova variável "x". E quando eu mudar o valor de x, a cara do Winston move 0:01:02.398,0:01:04.896 Mas não seus olhos ou sua boca 0:01:04.896,0:01:13.694 Para arrumar isso, nós teremos que definir a posição dos olhos deles e da boca, relativa a posição da cara. 0:01:13.694,0:01:19.940 Então a coordenadas "x" serão os centros de todas as outras elipses, então a cara dele está sendo desenhada em... 0:01:19.940,0:01:28.603 200, agora vamos fazer seu olho esquerdo primeiro, essa elipse é o olho esquerdo dele, e podemos ver que está desenhada em 150 0:01:28.603,0:01:32.865 Então bem aqui é 150 0:01:32.865,0:01:37.556 E eu sei que 150 é 200 menos 50 0:01:37.592,0:01:42.360 Então seu olho esquerdo deverá estar sempre onde a cara dele está, menos 50 0:01:42.360,0:01:46.894 Então vai ser "x", que é a posição da cara dele, menos 50 0:01:46.894,0:01:52.950 E agora se eu mudar o valor dessa coordenada x, o olho dele se move junto com a cara 0:01:52.864,0:01:54.206 Vamos fazer os outros. 0:01:54.206,0:02:01.302 Então o olho direito dele é está desenhado em 300, eu posso ver, então aqui é 300 0:02:01.302,0:02:05.214 E 300, eu sei que é 100 a mais que 200 0:02:05.214,0:02:09.902 Então o olho direito deverá estar sempre aonde a cara estiver mais 100 0:02:09.902,0:02:12.535 Isso é x+ 100 0:02:12.535,0:02:16.302 Agora nós temos apenas a boca, que está sendo desenhada em 250 0:02:16.302,0:02:22.993 É bem aqui, nós temos 250, e 250 é 200 mais 50 0:02:22.993,0:02:29.635 Ela sempre estará onde a cara está x + 50 0:02:29.635,0:02:37.052 Agora eu vou me livrar desses rabiscos. Sempre que eu mudar o valor de x, vai mover a cara inteira! 0:02:39.205,0:02:42.697 Antes de você ir, você devia saber umas coisas a mais sobre variáveis 0:02:42.697,0:02:45.558 Uma vez que você criou uma variável usando var x 0:02:45.558,0:02:48.395 Você pode atribuir o valor quantas vezes você quiser. 0:02:48.395,0:02:57.996 Então depois de dar a x o valor 198, eu posso dizer que x recebe 300, ou x recebe 150 0:02:57.996,0:03:03.724 A partir daí, o computador tratará x como nós atribuímos por último 0:03:03.724,0:03:05.529 Nesse caso 150 0:03:05.529,0:03:08.235 Mas você só precisar digitar var uma vez por variável 0:03:08.235,0:03:15.329 Se aqui eu digitar var x = 150; em vez disso, isso vai ter criado uma nova variável chamada x 0:03:15.329,0:03:21.062 Completamente destruindo a velha variável x no processo, então todas essas variável terão indo para a lixeira 0:03:21.062,0:03:24.432 E depois disso o computador apenas usará a nova variável 0:03:24.432,0:03:28.951 Algumas vezes você pode fazer isso sem que coisas terríveis aconteçam, mas eu não aconselharia. 0:03:28.951,0:03:32.448 Por hora eu só vou fazer isso uma vez ( var x = 150;) 0:03:32.448,0:03:39.058 E agora convenientemente eu posso mover todo o Winston para fora da tela, então eu posso falar sobre o próximo assunto 0:03:39.058,0:03:46.662 Então sempre que você tiver uma variável igual a algo, essa variável está num lugar seguro e feliz. 0:03:46.662,0:03:53.269 Na verdade no lado esquerdo do sinal de igual está o único lugar onde uma variável pode verdadeira se sentir como uma 0:03:53.269,0:03:57.173 porque este é o único lugar que o computador a considerará como variável. 0:03:57.173,0:04:00.037 Em qualquer outro lugar, o computador apenas finge que é um valor 0:04:00.037,0:04:05.949 Mesmo que façamos algo assim, var x recebe 10 (var x = 10;) 0:04:05.949,0:04:11.760 E então, x recebe x (x = x;) Uau, confuso 0:04:11.760,0:04:19.997 Bem, na esquerda, nós temos x, que é um variável livre e independente, que pode crescer, que pode mudar! 0:04:19.997,0:04:24.997 Mas na esquerda é apenas 10 0:04:24.997,0:04:29.167 Triste :( Mas isso significa que podemos fazer coisas realmente úteis como 0:04:29.167,0:04:33.535 Eu posso dizer que x recebe x+1 (x = x+1;) 0:04:33.535,0:04:43.034 Então nas esquerda temos nossa variável em um lugar seguro e feliz, e na direita nós temos essa variável, a qual nós sabemos que basicamente é só um número 0:04:43.034,0:04:44.449 É só 10 0:04:44.449,0:04:47.199 Então nós mentalmente substituímos esse x por 10 mais 1 0:04:47.199,0:04:51.064 Que apenas significa x recebe 11 0:04:51.064,0:04:57.453 Então essa linha inteira está basicamente dizendo x recebe 11, então de agora em diante o valor de x é 11 0:04:57.453,0:05:00.831 Vamos ver o que acontece se trazermos outra variável para a equação 0:05:00.831,0:05:06.448 Nós faremos var x recebe 10 (var x = 10;) 0:05:06.448,0:05:10.500 var y recebe 20 (var y = 20;) 0:05:10.500,0:05:12.733 x recebe y (x = y;) 0:05:12.733,0:05:17.029 e y recebe 7 (y = 7;) 0:05:17.029,0:05:21.203 Ok, o que eu quero saber é, qual o valor de x? 0:05:21.203,0:05:23.531 Vamos descobrir 0:05:23.531,0:05:28.604 Então neste ponto criamos uma nova variável x, e atribuímos o valor 10 0:05:28.604,0:05:31.287 Então o valor de x é 10 0:05:31.287,0:05:35.536 Nesse ponto aqui, criamos uma nova variável y e a demos o valor 20 0:05:35.536,0:05:39.165 Então não fizemos nada em x, então o valor de x ainda é 10 0:05:39.165,0:05:44.098 Aqui nós estamos dizendo x recebe y. Bem isso é muito confuso, mas se você pensar sobre isso 0:05:44.098,0:05:47.869 nós sabemos que apenas uma dessa variáveis está no lugar seguro e feliz. 0:05:47.869,0:05:52.204 E a outra variável está sendo tratada exatamente como se fosse um número 0:05:52.957,0:06:00.188 Então aqui nós mentalmente substituímos esse y com o seu valor, que é 20, e nós sabemos o que aquele sinal realmente significa 0:06:00.188,0:06:04.725 é que x recebe 20. Então o valor de x é 20! 0:06:04.725,0:06:09.948 E aqui nós temos o y no lugar seguro e feliz dessa vez, mas esse não é realmente confuso 0:06:09.948,0:06:12.698 porque nós temos um número do outro lado 0:06:12.698,0:06:21.071 Aqui está a grande questão, quando eu mudo o valor do y aqui, isso muda o valor de x ali em cima? 0:06:21.071,0:06:25.558 A resposta, NÃO!! 0:06:25.558,0:06:31.166 Você tem que lembrar, aqui em cima y está sendo tratada apenas como um número 0:06:31.166,0:06:35.864 O computador vai ignorar completamente que é uma variável, esquecer que de fato ela pode mudar 0:06:35.864,0:06:41.614 e ele só vai dizer "oh, y o que você realmente significa é 20" 0:06:41.614,0:06:49.224 Então bem qui, nós estamos atribuindo um número a x, não estamos atribuindo uma variável, estamos adicionando o valor de y, que é 20 0:06:49.224,0:06:58.705 E isso significa que o valor de x continua 20, mesmo que depois nós mudemos o valor dessa variável y na última linha 0:06:58.705,0:07:06.285 Ufa! Capisce? Bem agora vocês são especialistas em variáveis, parabéns!!