[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:00.87,0:00:03.97,Default,,0000,0000,0000,,Ya aprendiste a crear tus propias variables y a usarlas. Dialogue: 0,0:00:03.97,0:00:06.54,Default,,0000,0000,0000,,Ahora aprenderemos 2 variables especiales: Dialogue: 0,0:00:06.54,0:00:10.30,Default,,0000,0000,0000,,"mouseX" y "mouseY". Dialogue: 0,0:00:10.30,0:00:16.13,Default,,0000,0000,0000,,Nunca tendrás que crear estas variables, porque de hecho, ya existen. Dialogue: 0,0:00:16.13,0:00:19.81,Default,,0000,0000,0000,,El programa establece los valores de estas variable, detrás de bastidores, Dialogue: 0,0:00:19.81,0:00:24.22,Default,,0000,0000,0000,,asegurándose de que el valor de "mouseX" sea siempre la posición "x" de tu ratón, Dialogue: 0,0:00:24.22,0:00:27.54,Default,,0000,0000,0000,,y que el valor de "mouseY" sea la posición "y" de tu ratón. Dialogue: 0,0:00:27.54,0:00:30.73,Default,,0000,0000,0000,,Esto permite hacer fácilmente cosas interactivas, Dialogue: 0,0:00:30.73,0:00:33.28,Default,,0000,0000,0000,,que dependen de la posición del ratón. Dialogue: 0,0:00:33.28,0:00:36.51,Default,,0000,0000,0000,,Veamos la elipse que estoy dibujando aquí. Dialogue: 0,0:00:36.51,0:00:40.73,Default,,0000,0000,0000,,En este momento, siempre la estoy dibujando en 200, 200. Dialogue: 0,0:00:40.73,0:00:44.28,Default,,0000,0000,0000,,Si uso "mouseX" y "mouseY", las variables especiales, Dialogue: 0,0:00:44.28,0:00:49.20,Default,,0000,0000,0000,,entonces puedo dibujar la elipse en las coordenadas "mouseX" y "mouseY". Dialogue: 0,0:00:49.20,0:00:52.48,Default,,0000,0000,0000,,Ahora, si muevo el ratón sobre el área de dibujo, puedes ver Dialogue: 0,0:00:52.48,0:00:55.05,Default,,0000,0000,0000,,la elipse dibujada en donde el ratón se posiciona, Dialogue: 0,0:00:55.05,0:00:57.23,Default,,0000,0000,0000,,la elipse sigue al ratón. Dialogue: 0,0:00:57.23,0:01:01.22,Default,,0000,0000,0000,,Esto es super interesante, ¿puedes ver lo que estoy dibujando? ¡Woo! Dialogue: 0,0:01:01.22,0:01:04.01,Default,,0000,0000,0000,,Si vas a usar "mouseX" y "mouseY", tienes que asegurarte Dialogue: 0,0:01:04.01,0:01:06.54,Default,,0000,0000,0000,,de que las estás usando dentro de la función "draw", Dialogue: 0,0:01:06.54,0:01:08.23,Default,,0000,0000,0000,,porque mira qué pasa Dialogue: 0,0:01:08.23,0:01:13.42,Default,,0000,0000,0000,,si movemos estas dos líneas de código fuera de la función "draw". Dialogue: 0,0:01:13.42,0:01:15.00,Default,,0000,0000,0000,,¿Lo ves? Dialogue: 0,0:01:15.00,0:01:19.02,Default,,0000,0000,0000,,Ahora, este código que tenemos aquí sólo corre una vez, Dialogue: 0,0:01:19.02,0:01:22.22,Default,,0000,0000,0000,,entonces la elipse se dibuja una vez nada más, Dialogue: 0,0:01:22.22,0:01:24.68,Default,,0000,0000,0000,,y se dibuja en la posición de mi ratón, Dialogue: 0,0:01:24.68,0:01:26.92,Default,,0000,0000,0000,,muy al principio del programa. Dialogue: 0,0:01:26.92,0:01:30.57,Default,,0000,0000,0000,,Es por eso que necesitamos ponerlo dentro de la función "draw", Dialogue: 0,0:01:30.57,0:01:36.05,Default,,0000,0000,0000,,porque la función "draw" es llamada repetidamente mientras nuestro programa está corriendo. Dialogue: 0,0:01:36.05,0:01:40.74,Default,,0000,0000,0000,,Entonces queremos que cuando sea llamada, vea cuáles son los valores actuales de "mouseX" y "mouseY" Dialogue: 0,0:01:40.74,0:01:43.50,Default,,0000,0000,0000,,en ese momento, para que dibuje la elipse en esa posición. Dialogue: 0,0:01:43.50,0:01:46.18,Default,,0000,0000,0000,,Si piensas en eso, en realidad es muy similar a una animación, Dialogue: 0,0:01:46.18,0:01:49.13,Default,,0000,0000,0000,,está cambiando con el tiempo, sólo que de una manera diferente. Dialogue: 0,0:01:49.13,0:01:52.55,Default,,0000,0000,0000,,Muy bien, ahora podemos hacer cosas más entretenidas. Dialogue: 0,0:01:52.55,0:01:57.26,Default,,0000,0000,0000,,¿Qué tal si en vez de dibujar la elipse sobre las coordenadas "mouseX" y "mouseY", Dialogue: 0,0:01:57.26,0:02:03.46,Default,,0000,0000,0000,,la dibujo en "mouseX" pero configuro "mouseY" a algo así como 300? Dialogue: 0,0:02:03.46,0:02:07.25,Default,,0000,0000,0000,,Ahora puedes ver que la elipse sólo sigue mi coordenada "x", Dialogue: 0,0:02:07.25,0:02:10.19,Default,,0000,0000,0000,,ignorando el valor de la coordenada "y" de mi ratón. Dialogue: 0,0:02:10.19,0:02:17.05,Default,,0000,0000,0000,,Entonces, ¿qué tal si dibujo la elipse en las coordenadas "mouseX" y "mouseY" de nuevo, Dialogue: 0,0:02:17.05,0:02:20.48,Default,,0000,0000,0000,,pero quito la llamada a la función "background", comentándola? Dialogue: 0,0:02:20.48,0:02:24.93,Default,,0000,0000,0000,,Ok, ¡woo!, Ahora mira, tengo esta cosa que parece como un pincel divertido. Dialogue: 0,0:02:24.93,0:02:27.23,Default,,0000,0000,0000,,Es asombroso. Dialogue: 0,0:02:27.23,0:02:30.71,Default,,0000,0000,0000,,O, también puedo intercambiar estas variables. Dialogue: 0,0:02:30.71,0:02:33.20,Default,,0000,0000,0000,,Déjame traer de regreso la llamada a la función "background". Dialogue: 0,0:02:33.20,0:02:37.51,Default,,0000,0000,0000,,Entonces, cambio estas variables aquí, "mouseX" y "mouseY", Dialogue: 0,0:02:37.51,0:02:38.83,Default,,0000,0000,0000,,y vemos qué pasa. Dialogue: 0,0:02:38.83,0:02:41.61,Default,,0000,0000,0000,,Ok, ahora se siente muy raro. Dialogue: 0,0:02:41.61,0:02:43.91,Default,,0000,0000,0000,,Tengo los controles del ratón haciendo lo opuesto, Dialogue: 0,0:02:43.91,0:02:45.39,Default,,0000,0000,0000,,a lo que esperamos que hagan. Dialogue: 0,0:02:45.39,0:02:49.08,Default,,0000,0000,0000,,Pero es genial, te puedes imaginar el hacer un juego que trata de dibujar algo o Dialogue: 0,0:02:49.08,0:02:53.40,Default,,0000,0000,0000,,hacer algo mientras usas los controles del ratón invertidos. Dialogue: 0,0:02:53.40,0:02:58.82,Default,,0000,0000,0000,,Esto es todo sobre "mouseX" y "mouseY", muy divertido. ¡Disfruta!