[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:01.86,0:00:10.08,Default,,0000,0000,0000,,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 Dialogue: 0,0:00:10.08,0:00:15.50,Default,,0000,0000,0000,,Lembre-se que antes tínhamos que digitar o mesmo número quatro vezes, sempre que queríamos mudar o tamanhos dos olhos dele Dialogue: 0,0:00:15.50,0:00:18.94,Default,,0000,0000,0000,,Mas nós podemos usar variáveis para substituir números quando eles não são iguais? Dialogue: 0,0:00:18.94,0:00:21.50,Default,,0000,0000,0000,,E se eu quisesse mover o Winston um pouquinho? Dialogue: 0,0:00:21.50,0:00:27.47,Default,,0000,0000,0000,,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 Dialogue: 0,0:00:27.47,0:00:33.47,Default,,0000,0000,0000,,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 Dialogue: 0,0:00:33.47,0:00:36.69,Default,,0000,0000,0000,,O que significa, eu posso usar variáveis em expressões matemáticas Dialogue: 0,0:00:36.69,0:00:40.46,Default,,0000,0000,0000,,Que tal isso, vamos criar uma variável para a posição x de Winston Dialogue: 0,0:00:40.46,0:00:43.02,Default,,0000,0000,0000,,Vamos chamar de "var x" Dialogue: 0,0:00:43.02,0:00:47.74,Default,,0000,0000,0000,,Simples o suficiente, okay, agora vamos da-la o valor da coordenada x da cara do Winston Dialogue: 0,0:00:47.74,0:00:51.34,Default,,0000,0000,0000,,A cara dele está sendo desenhada na coordenada x 200 Dialogue: 0,0:00:51.34,0:00:54.42,Default,,0000,0000,0000,,Então nós dizemos var x recebe 200 (var x = 200;) Dialogue: 0,0:00:55.05,0:01:02.40,Default,,0000,0000,0000,,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 Dialogue: 0,0:01:02.40,0:01:04.90,Default,,0000,0000,0000,,Mas não seus olhos ou sua boca Dialogue: 0,0:01:04.90,0:01:13.69,Default,,0000,0000,0000,,Para arrumar isso, nós teremos que definir a posição dos olhos deles e da boca, relativa a posição da cara. Dialogue: 0,0:01:13.69,0:01:19.94,Default,,0000,0000,0000,,Então a coordenadas "x" serão os centros de todas as outras elipses, então a cara dele está sendo desenhada em... Dialogue: 0,0:01:19.94,0:01:28.60,Default,,0000,0000,0000,,200, agora vamos fazer seu olho esquerdo primeiro, essa elipse é o olho esquerdo dele, e podemos ver que está desenhada em 150 Dialogue: 0,0:01:28.60,0:01:32.86,Default,,0000,0000,0000,,Então bem aqui é 150 Dialogue: 0,0:01:32.86,0:01:37.56,Default,,0000,0000,0000,,E eu sei que 150 é 200 menos 50 Dialogue: 0,0:01:37.59,0:01:42.36,Default,,0000,0000,0000,,Então seu olho esquerdo deverá estar sempre onde a cara dele está, menos 50 Dialogue: 0,0:01:42.36,0:01:46.89,Default,,0000,0000,0000,,Então vai ser "x", que é a posição da cara dele, menos 50 Dialogue: 0,0:01:46.89,0:01:52.95,Default,,0000,0000,0000,,E agora se eu mudar o valor dessa coordenada x, o olho dele se move junto com a cara Dialogue: 0,0:01:52.86,0:01:54.21,Default,,0000,0000,0000,,Vamos fazer os outros. Dialogue: 0,0:01:54.21,0:02:01.30,Default,,0000,0000,0000,,Então o olho direito dele é está desenhado em 300, eu posso ver, então aqui é 300 Dialogue: 0,0:02:01.30,0:02:05.21,Default,,0000,0000,0000,,E 300, eu sei que é 100 a mais que 200 Dialogue: 0,0:02:05.21,0:02:09.90,Default,,0000,0000,0000,,Então o olho direito deverá estar sempre aonde a cara estiver mais 100 Dialogue: 0,0:02:09.90,0:02:12.54,Default,,0000,0000,0000,,Isso é x+ 100 Dialogue: 0,0:02:12.54,0:02:16.30,Default,,0000,0000,0000,,Agora nós temos apenas a boca, que está sendo desenhada em 250 Dialogue: 0,0:02:16.30,0:02:22.99,Default,,0000,0000,0000,,É bem aqui, nós temos 250, e 250 é 200 mais 50 Dialogue: 0,0:02:22.99,0:02:29.64,Default,,0000,0000,0000,,Ela sempre estará onde a cara está x + 50 Dialogue: 0,0:02:29.64,0:02:37.05,Default,,0000,0000,0000,,Agora eu vou me livrar desses rabiscos. Sempre que eu mudar o valor de x, vai mover a cara inteira! Dialogue: 0,0:02:39.20,0:02:42.70,Default,,0000,0000,0000,,Antes de você ir, você devia saber umas coisas a mais sobre variáveis Dialogue: 0,0:02:42.70,0:02:45.56,Default,,0000,0000,0000,,Uma vez que você criou uma variável usando var x Dialogue: 0,0:02:45.56,0:02:48.40,Default,,0000,0000,0000,,Você pode atribuir o valor quantas vezes você quiser. Dialogue: 0,0:02:48.40,0:02:57.100,Default,,0000,0000,0000,,Então depois de dar a x o valor 198, eu posso dizer que x recebe 300, ou x recebe 150 Dialogue: 0,0:02:57.100,0:03:03.72,Default,,0000,0000,0000,,A partir daí, o computador tratará x como nós atribuímos por último Dialogue: 0,0:03:03.72,0:03:05.53,Default,,0000,0000,0000,,Nesse caso 150 Dialogue: 0,0:03:05.53,0:03:08.24,Default,,0000,0000,0000,,Mas você só precisar digitar var uma vez por variável Dialogue: 0,0:03:08.24,0:03:15.33,Default,,0000,0000,0000,,Se aqui eu digitar var x = 150; em vez disso, isso vai ter criado uma nova variável chamada x Dialogue: 0,0:03:15.33,0:03:21.06,Default,,0000,0000,0000,,Completamente destruindo a velha variável x no processo, então todas essas variável terão indo para a lixeira Dialogue: 0,0:03:21.06,0:03:24.43,Default,,0000,0000,0000,,E depois disso o computador apenas usará a nova variável Dialogue: 0,0:03:24.43,0:03:28.95,Default,,0000,0000,0000,,Algumas vezes você pode fazer isso sem que coisas terríveis aconteçam, mas eu não aconselharia. Dialogue: 0,0:03:28.95,0:03:32.45,Default,,0000,0000,0000,,Por hora eu só vou fazer isso uma vez ( var x = 150;) Dialogue: 0,0:03:32.45,0:03:39.06,Default,,0000,0000,0000,,E agora convenientemente eu posso mover todo o Winston para fora da tela, então eu posso falar sobre o próximo assunto Dialogue: 0,0:03:39.06,0:03:46.66,Default,,0000,0000,0000,,Então sempre que você tiver uma variável igual a algo, essa variável está num lugar seguro e feliz. Dialogue: 0,0:03:46.66,0:03:53.27,Default,,0000,0000,0000,,Na verdade no lado esquerdo do sinal de igual está o único lugar onde uma variável pode verdadeira se sentir como uma Dialogue: 0,0:03:53.27,0:03:57.17,Default,,0000,0000,0000,,porque este é o único lugar que o computador a considerará como variável. Dialogue: 0,0:03:57.17,0:04:00.04,Default,,0000,0000,0000,,Em qualquer outro lugar, o computador apenas finge que é um valor Dialogue: 0,0:04:00.04,0:04:05.95,Default,,0000,0000,0000,,Mesmo que façamos algo assim, var x recebe 10 (var x = 10;) Dialogue: 0,0:04:05.95,0:04:11.76,Default,,0000,0000,0000,,E então, x recebe x (x = x;) Uau, confuso Dialogue: 0,0:04:11.76,0:04:19.100,Default,,0000,0000,0000,,Bem, na esquerda, nós temos x, que é um variável livre e independente, que pode crescer, que pode mudar! Dialogue: 0,0:04:19.100,0:04:24.100,Default,,0000,0000,0000,,Mas na esquerda é apenas 10 Dialogue: 0,0:04:24.100,0:04:29.17,Default,,0000,0000,0000,,Triste :( Mas isso significa que podemos fazer coisas realmente úteis como Dialogue: 0,0:04:29.17,0:04:33.54,Default,,0000,0000,0000,,Eu posso dizer que x recebe x+1 (x = x+1;) Dialogue: 0,0:04:33.54,0:04:43.03,Default,,0000,0000,0000,,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 Dialogue: 0,0:04:43.03,0:04:44.45,Default,,0000,0000,0000,,É só 10 Dialogue: 0,0:04:44.45,0:04:47.20,Default,,0000,0000,0000,,Então nós mentalmente substituímos esse x por 10 mais 1 Dialogue: 0,0:04:47.20,0:04:51.06,Default,,0000,0000,0000,,Que apenas significa x recebe 11 Dialogue: 0,0:04:51.06,0:04:57.45,Default,,0000,0000,0000,,Então essa linha inteira está basicamente dizendo x recebe 11, então de agora em diante o valor de x é 11 Dialogue: 0,0:04:57.45,0:05:00.83,Default,,0000,0000,0000,,Vamos ver o que acontece se trazermos outra variável para a equação Dialogue: 0,0:05:00.83,0:05:06.45,Default,,0000,0000,0000,,Nós faremos var x recebe 10 (var x = 10;) Dialogue: 0,0:05:06.45,0:05:10.50,Default,,0000,0000,0000,,var y recebe 20 (var y = 20;) Dialogue: 0,0:05:10.50,0:05:12.73,Default,,0000,0000,0000,,x recebe y (x = y;) Dialogue: 0,0:05:12.73,0:05:17.03,Default,,0000,0000,0000,,e y recebe 7 (y = 7;) Dialogue: 0,0:05:17.03,0:05:21.20,Default,,0000,0000,0000,,Ok, o que eu quero saber é, qual o valor de x? Dialogue: 0,0:05:21.20,0:05:23.53,Default,,0000,0000,0000,,Vamos descobrir Dialogue: 0,0:05:23.53,0:05:28.60,Default,,0000,0000,0000,,Então neste ponto criamos uma nova variável x, e atribuímos o valor 10 Dialogue: 0,0:05:28.60,0:05:31.29,Default,,0000,0000,0000,,Então o valor de x é 10 Dialogue: 0,0:05:31.29,0:05:35.54,Default,,0000,0000,0000,,Nesse ponto aqui, criamos uma nova variável y e a demos o valor 20 Dialogue: 0,0:05:35.54,0:05:39.16,Default,,0000,0000,0000,,Então não fizemos nada em x, então o valor de x ainda é 10 Dialogue: 0,0:05:39.16,0:05:44.10,Default,,0000,0000,0000,,Aqui nós estamos dizendo x recebe y. Bem isso é muito confuso, mas se você pensar sobre isso Dialogue: 0,0:05:44.10,0:05:47.87,Default,,0000,0000,0000,,nós sabemos que apenas uma dessa variáveis está no lugar seguro e feliz. Dialogue: 0,0:05:47.87,0:05:52.20,Default,,0000,0000,0000,,E a outra variável está sendo tratada exatamente como se fosse um número Dialogue: 0,0:05:52.96,0:06:00.19,Default,,0000,0000,0000,,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 Dialogue: 0,0:06:00.19,0:06:04.72,Default,,0000,0000,0000,,é que x recebe 20. Então o valor de x é 20! Dialogue: 0,0:06:04.72,0:06:09.95,Default,,0000,0000,0000,,E aqui nós temos o y no lugar seguro e feliz dessa vez, mas esse não é realmente confuso Dialogue: 0,0:06:09.95,0:06:12.70,Default,,0000,0000,0000,,porque nós temos um número do outro lado Dialogue: 0,0:06:12.70,0:06:21.07,Default,,0000,0000,0000,,Aqui está a grande questão, quando eu mudo o valor do y aqui, isso muda o valor de x ali em cima? Dialogue: 0,0:06:21.07,0:06:25.56,Default,,0000,0000,0000,,A resposta, NÃO!! Dialogue: 0,0:06:25.56,0:06:31.17,Default,,0000,0000,0000,,Você tem que lembrar, aqui em cima y está sendo tratada apenas como um número Dialogue: 0,0:06:31.17,0:06:35.86,Default,,0000,0000,0000,,O computador vai ignorar completamente que é uma variável, esquecer que de fato ela pode mudar Dialogue: 0,0:06:35.86,0:06:41.61,Default,,0000,0000,0000,,e ele só vai dizer "oh, y o que você realmente significa é 20" Dialogue: 0,0:06:41.61,0:06:49.22,Default,,0000,0000,0000,,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 Dialogue: 0,0:06:49.22,0:06:58.70,Default,,0000,0000,0000,,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 Dialogue: 0,0:06:58.70,0:07:06.28,Default,,0000,0000,0000,,Ufa! Capisce? Bem agora vocês são especialistas em variáveis, parabéns!!