Crea un juego de objetos ocultos en Godot | Michael Mcguire | Skillshare

Velocidad de reproducción


1.0x


  • 0.5x
  • 0.75x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Crea un juego de objetos ocultos en Godot

teacher avatar Michael Mcguire, Author | Programmer

Ve esta clase y miles más

Obtenga acceso ilimitado a todas las clases
Clases enseñadas por líderes de la industria y profesionales activos
Los temas incluyen ilustración, diseño, fotografía y más

Ve esta clase y miles más

Obtenga acceso ilimitado a todas las clases
Clases enseñadas por líderes de la industria y profesionales activos
Los temas incluyen ilustración, diseño, fotografía y más

Lecciones en esta clase

    • 1.

      Introducción

      0:38

    • 2.

      Descarga de Godot

      1:58

    • 3.

      Crear nuestro proyecto

      3:20

    • 4.

      Capas de escena

      7:40

    • 5.

      Cambiar el cursor

      11:47

    • 6.

      Collecting objetos

      10:17

    • 7.

      Inventario visual

      8:40

    • 8.

      Guardar y cargar los datos

      8:19

    • 9.

      Cargar datos al invento

      18:05

    • 10.

      Eliminar los objetos de la escena

      8:45

    • 11.

      Objetos arrastrables

      16:02

    • 12.

      Información del usuario

      7:19

    • 13.

      Mapa

      11:08

    • 14.

      Uso del mapa

      5:55

    • 15.

      Cerraduras

      20:58

    • 16.

      Fijación de señales de bloqueo

      8:44

    • 17.

      Opciones alternativas

      8:12

    • 18.

      Cómo añadir audio

      5:17

  • --
  • Nivel principiante
  • Nivel intermedio
  • Nivel avanzado
  • Todos los niveles

Generado por la comunidad

El nivel se determina según la opinión de la mayoría de los estudiantes que han dejado reseñas en esta clase. La recomendación del profesor o de la profesora se muestra hasta que se recopilen al menos 5 reseñas de estudiantes.

114

Estudiantes

--

Proyecto

Acerca de esta clase



Aprende a crear juegos en el motor de juegos Godot un lenguaje de

programación
python-like en este curso.En este curso, crearemos un juego de objetos ocultos que es multiplataforma para MacOS, Windows, Windows, Linux, Linux, Android, IOS o incluso un browser.While se integren en un

browser.While

aprenderás en tu desarrollo

  • La capa de los juegos de objetos ocultos

  • Cómo pasar de una locación

  • Guardar y cargar los datos

  • Crea un sistema clave y cerrado

  • Gestión de inventos

    y más...

    Godot proporciona un enorme conjunto de herramientas comunes, para que puedas centrarte en hacer tu juego sin reinventar la ruedas.

    Godot es completamente gratuito y abierto bajo la muy permissive No hay cuerdas adjuntas, ninguna regalías. Tu juego es tuyo, hasta la última línea de código motor.

Conoce a tu profesor(a)

Teacher Profile Image

Michael Mcguire

Author | Programmer

Profesor(a)
Level: All Levels

Valoración de la clase

¿Se cumplieron las expectativas?
    ¡Superadas!
  • 0%
  • 0%
  • Un poco
  • 0%
  • No realmente
  • 0%

¿Por qué unirse a Skillshare?

Mira las galardonadas Skillshare Originals

Cada clase tiene lecciones cortas y proyectos prácticos

Tu membresía apoya a los profesores de Skillshare

Aprende desde cualquier lugar

Ve clases sobre la marcha con la aplicación de Skillshare. Progresa en línea o descarga las clases para verlas en el avión, el metro o donde sea que aprendas mejor.

Transcripciones

1. Introducción: Bienvenido a mi curso. Y en esta serie vamos a seguir adelante y vas a aprender todos los conceptos básicos para crear un juego de objetos ocultos. Entonces si eso es algo que has estado buscando crear, nuestra pregunta cómo se hace bien, ahora puedes aprender a hacer eso. Vamos a estar haciendo que nuestros guiones sean reutilizables para poder utilizarlos en múltiples objetos diferentes a lo largo de nuestro juego. No importa cuántas escenas sean, cuántos niveles son las habitaciones que desea crear. Esto incluye recoger objetos, objetos arrastrables, llaves bloqueadas, transitar de una habitación a otra, seguimiento de nuestro inventario, guardar y cargar nuestros datos, y así sucesivamente. Entonces si algo de eso suena interesante, ven y insértate, y te veré en el video. 2. Descarga de Godot: Muy bien, bienvenidos a todos. Ese primer paso para iniciar nuestro desarrollo de nuestro juego de objetos ocultos es así que por supuesto, obtenemos nuestro motor. Por lo que si no tienes este extremo a extremo ya instalado, puedes dirigirte al sitio web de Godot Engine.org. Hit Descargar aquí en la parte superior. Eres sistemas operativos deben ser detectados. Pero si no, aquí encontrarás tanto Linux, Mac OS, como Windows en la parte superior. Y seguirías adelante y seleccionarías la versión estándar. No necesitamos la versión mono ya que no estaremos usando C-sharp durante este proyecto. Y puedes ver algunos de los requisitos aquí abajo actualmente es soporte OpenGL. Si tienes alguna máquina aquí, deberías estar más o menos bien para ir. Y luego tienes algunas instrucciones aquí que tiene C. Simplemente, vamos a conseguir un zip cuando lo descarguemos. Simplemente lo extraes y eres capaz de empezar a ejecutarlo. Alternativamente. Se puede conseguir a través de la escuela. Si sabes hacer eso. Enfriar. También está disponible en más de una pulgada. Puedes conseguirlo y descargarlo. Y está disponible a través de vapor. Ahora si vamos, entonces cómo lo consigues, vas a necesitar las plantillas de exportación. Ahora ya sea puedes conseguirlo por aquí. Y te mostraré cómo instalarlo en el siguiente video. O en realidad podemos conseguirlo directamente a través del propio motor, que te mostraré cómo hacerlo también. Entonces si quieres obtener la suma final, que puedas seguir adelante y hacer clic en este botón aquí, exportar plantilla estándar. Y te mostraré qué hacer con ese expediente. Si no quieres conseguir aquí los archivos físicos, entonces te mostraré cómo obtenerlo desde dentro del motor. Entonces seguiré adelante y solo iré a descargar tu versión para tu sistema operativo. Y te veré en el próximo. 3. Crear nuestro proyecto: De acuerdo, al abrir y conseguir 0 por primera vez, serás recibido con este tipo de lanzador. Y como puede que tengas como popup, podría preguntarte si querías descargar un montón de las demos. Si lo haces, verás todos estos dentro de aquí. Y si no, bueno, no son preocupaciones. Ninguno de ellos realmente nos va a ayudar para nuestro proyecto en este curso. Pero mientras estamos aquí, podemos seguir adelante y golpear Nuevo Proyecto. Puedes seguir adelante y darle un nombre. Llamaré a mis objetos ocultos, juego de rompecabezas. Entonces llamaré a mi que decidas dónde quieres poner. Yo sólo voy a ser menos yo los documentos. Voy a golpear Crear Carpeta. Y voy a usar OpenGL ES 3 si ves esto en el futuro y estás usando Gatto 4, esto funciona. En su lugar salvaremos a Vulcano. Muy bien, adelante y golpea crear y editar. Está bien, ahora déjame ajustar esto para que puedas ver todo en pantalla. Está bien. Y tenemos nuestra primera configuración de proyecto y listo para empezar a trabajar en ello. Pero lo que vamos a hacer, como te dije la última vez, que te voy a mostrar cómo conseguir la plantilla de exportación va. Por lo que vamos a dirigirnos a escribir en un par a editor y bajar a gestionar plantillas de exportación aquí en la parte superior. Ahora bien, si descargaras el archivo, no lo instalarías desde archivo y localizarás ese archivo que descargaste. Y si no descargaste el archivo cuando quiso hacerlo desde dentro del editor aquí. Puedes seguir adelante y decir descarga aquí mismo, golpea eso. Y luego tendrás este enlace URL aquí, este hipervínculo y diciendo oficial, cualquiera que sea la versión en la que estés, HTTPS estable. Vamos a seguir adelante y haga clic en eso y comenzará su descarga. Y una vez que se haya descargado por completo, tendrás las plantillas. Y así ahora necesitamos estas plantillas y R2 realmente exportar un proyecto. Entonces si solo quieres usar esto para practicar tu codificación y aprender un poco, puedes hacerlo, pero si quieres exportar tu resultado final, resultado al final, sin duda podrás hacerlo ahora. Está bien, así que tenemos nuestro proyecto listo y con ganas de empezar a ir. Voy a dirigirme a 2D. Y voy a cambiar si piensa que voy a ir a la configuración de mi proyecto. Y aquí bajo la pestaña General, me voy a desplazar hacia abajo a la izquierda hasta que encuentre la sección de Windows es nosotros bajo ventana de visualización. Y voy a darle la vuelta a estos en torno a mi altura y ancho. Entonces voy a ir con 600 por 1024. Y lo cerraré. Muy bien, Así que estaré usando una vista de retrato para nuestro primer proyecto aquí y trabajando con esto. Y eso será todo para este video. Y los veré en la próxima donde podemos empezar a meternos en las cosas. Empiezo a maquillar nuestros juegos de objetos ocultos, lo traigo en nuestros activos e iniciando nuestro código. 4. Capas de escena: Muy bien, todos, en este video vamos a repasar nuestras capas y configurar nuestra escena para que podamos empezar a aprender los conceptos simples. Y, ya sabes, es una especie de bloquear el núcleo de un juego de objetos ocultos. Entonces para hacer eso, vamos a necesitar empezar con una escena 2D. Por supuesto. Vamos a seguir adelante y sólo voy a cambiar el nombre de esto de no 2D a principal. Y puedes simplemente hacer clic derecho y cambiar el nombre o hacer doble clic en él para hacerlo. Y para empezar va a seguir adelante y ahorrar. Para que pueda mantener esto mismo. Pero lo repentino mis escenas carpeta para que pueda mantener todo unido y organizado. Hit Guardar. Está bien. Ahora si entramos en nuestra carpeta Texturas, vas a ver que vamos a tener nuestra imagen inicial así como algo que es este picnic de capa superior. Y ambos van a ser lo que nos permita esconder y mostrar nuestros objetos alrededor. Entonces si solo seguimos adelante y agarramos nuestra imagen completa aquí y solo la colocamos aquí dentro. Algo así. Y vamos y ya verás que ahora tenemos una imagen completa. No sufre. Interesante, es sólo un poco de ahí, pero eso está bien. Porque también tenemos otra imagen aquí, nuestro picnic de capa superior. Adelante y arrastremos eso también. Y sólo intenta alinear eso lo mejor que puedas. Si lo deseas, puedes dar click en la primera imagen y mirar hacia el lado derecho y abrir transformada. Y podrías revisar esos números ahí y puedes seguir adelante y copiarlos y ponerlos dentro de la transformación de tu capa superior. Si quieres obtenerlos exactos. Y con eso, tenemos nuestras dos capas de nuestra imagen. Entonces como ejemplo, voy a seguir adelante y sólo arrastrar en este oso. Y si pusiera este oso y mi jerarquía entre ellos, ya ves que ahora puedo esconder este oso detrás del arbusto o detrás de este arbusto o por cualquier razón aquí abajo, detrás de nuestras pequeñas almohadas. Entonces esa capa superior es lo que nos va a permitir esconder nuestros objetos alrededor en nuestra escena. Ahora, obviamente este oso necesitaría tener su propio tema para esto. Porque necesitamos más que sólo un cuadro aquí. Entonces voy a seguir adelante y borrar eso, borrar el oso. Pero se puede ver el tipo de estructura que vamos por con esto. Entonces voy a golpear el plus en la parte superior aquí para crear una nueva escena. Voy a golpear otro nodo porque quiero que esto sea un sprite para mi año base. Y voy a seguir adelante y renombrar eso para soportar. Voy a traer la textura para ello. Y voy a golpear el plus arriba en la parte superior izquierda para agregar un nodo hijo, voy a sumar en un área 2D. Y con eso vamos a sumar en una hoja de coalición. Ahora la forma de colisión seleccionada, y vamos a mirar hacia el lado derecho hacia nuestro inspector. Y para la forma, solo podemos seleccionar nuevo rectángulo. Ahora, puedes seguir adelante y simplemente agrandar esto para que quepa. No tenemos que ser ningún pixel perfecto porque esto es más o menos que va a ser más como nuestra zona de click que la zona que va a afectar a nuestro ratón y decirle a nuestro juego qué hacer. Voy a seguir adelante y ahorrar si quieres conocer el atajo y solo estamos usando Control S. Y vamos a dejar esto como se llama escena de oso, ponerlo en nuestra carpeta de escenas y golpear Guardar. Ahora puedes seguir adelante y hacer esto también por tus otros objetos. Entonces voy a crear otra escena. Ve a otro. Chupa mi sprite. Voy a nombrar a esta cámara. Quiero esconder una cámara en mi escena. Vamos a sumar el área a D y nuestra forma de colisión. Voy a añadir la textura de la cámara a mi sprite. Forma de colisión. Vamos a añadir el rectángulo. Y en este caso el ángulo está un poco apagado, así que solo podrías ir lo suficientemente grande como para cubrirlo todo. O si te gustaría. Pero se podría hacer es pasar a transformarse y simplemente ajustar un poco tu rotación para que se ajuste a una mejor. De cualquier manera que quieras hacer depende completamente de ti. A ver. Oh, ¿quieres ir por el otro lado? Ahí hay 10 negativo. Parece negativo 10 se ve bastante bien. Probablemente lo suficientemente cerca para esto. Y simplemente iremos así. Asegúrate de cubrir nuestra cámara y guardar eso como nuestra escena de cámara. Y ahora tenemos dos objetos y podemos empezar a escondernos en nuestro juego. Impresionante. Entonces en nuestra escena principal, y vamos a seguir adelante con el principal. Un seleccionado principal con lo que se parece a este icono de cadena en la parte superior. Y lo que eso hace es que nos permita sumar en escenas que ya hemos creado. Por lo que podemos seguir adelante y añadir en nuestro desnudo click Principal otra vez, y añadir en nuestra cámara. Simplemente puedes agarrar ambos, poner los que están en medio de nuestras dos capas. Y puedes empezar a posicionarlas, posicionándolas donde quieras. Voy a colocar ahí mi oso y voy a colocar mi cámara escondida aquí abajo. Ahora, mi cámara para esta escala se ve realmente grande. Entonces solo voy a seguir adelante y encogerlo. Y como ven, tenemos esto como Transformación Libre. Pero si mantenemos turno, podemos mantener esa relación de aspecto. Entonces solo voy a seguir adelante y encogerlo hacia abajo. Agrega tipo de tomó eso detrás del pilar aquí. Está bien. Las cosas de oso pueden levantar eso allá arriba un poco. Eso parece que es un oso grande. Entonces voy a seguir adelante y encogerlo un poco. Muy bien, entonces ahora tenemos un oso y tenemos una cámara, y las tenemos escondidas dentro de nuestra escena. Ahora, ya sabes, facilidad, coloca esto en cualquier lugar que quieras. Siempre se puede modificar esta parte superior, esta capa superior. Y si quieres crear otras piezas que quieras ocultar, definitivamente puedes hacerlo. Y como verán, si solo escondo mi capa inferior, todo lo que hice fue cortar trozos de esa imagen y solo usar eso en una capa separada para esconder cosas detrás de ella. Y luego simplemente lo posicionamos así para que se vea indistinguible como si fuera una sola pieza. Está bien, así que tenemos todos los montados. Ojalá tengas una comprensión de cómo funciona nuestro sistema de capas en nuestros objetos ocultos vinieron aquí. Y a continuación pasaremos a configurar nuestro área de inventario visible y empezaremos a poner en marcha nuestros guiones. 5. Cambiar el cursor: Muy bien, bienvenidos de nuevo a todos. En este espejo, vamos a conseguir que nuestra configuración del ratón con nuestro cursor esté cambiando cada vez que pasemos el cursor sobre un objeto. Porque si seguimos adelante y golpeamos play o ahora, necesitamos seleccionar nuestra escena principal. Podemos seleccionar escena principal. Y ya ves cuando estamos aquí, no pasa nada, no tenemos indicador. Y si quieres que tu juego sea así y no tengas realmente ningún indicador para ayudar a tu usuario. Podrías hacer eso. No obstante, recomendaría tener algún tipo de indicado no lo que tu jugador no se pierde demasiado o se aburre con lo que está haciendo. Pero eso va a depender completamente de ti y tipo de juego que quieras crearlo. Obviamente, si no cambias el ratón a juegos, va a ser un poco más difícil, sobre todo si no les estás diciendo qué buscar específicamente. Entonces voy a seguir adelante y cerrar eso. Y justo aquí abajo, voy a seleccionar carpeta de scripts aquí. Voy a hacer clic derecho y voy a crear un nuevo guión. Y voy a llamar a esto global. Y aquí es donde vamos a sostener un montón de información diferente. Ahora arriba dos proyectos, ajustes del proyecto, nos dirigimos a la carga automática. Golpeamos este pequeño botón aquí junto a camino dirigido a nuestro guión global y presionamos Add. Ahora lo que esto hará es agregar como singleton. Y eso significa que podemos acceder a todos los datos dentro de aquí desde cualquier parte de nuestro juego. Sigamos adelante y guardemos que ahora si hacemos doble clic en nuestro guión aquí, y el lado izquierdo, podemos ver aquí se abre nuestro guión. Y podemos empezar. Entonces lo que vamos a necesitar por ahora van a ser dos variables, que van a ser nuestra norma del ratón y nuestra variable para el click del ratón. Entonces nos va a mostrar lo que se puede hacer clic y lo que no. Y podemos poner cada uno de estos a una carga. Cargar y vamos, y dentro de estos paréntesis, sólo vamos a arrastrar en nuestro cursor del ratón. Entonces voy a usar el cursor uno para mi normal. Y usaremos cursor a para nuestro clickable. Y verás que ambos errores desaparecen una vez que los llenes. Y por ahora, eso es todo lo que vamos a necesitar. Voy a seguir adelante y sólo eliminar esta información. Eso es todo lo que necesitamos. Puedo seguir adelante y golpear el control S, guardar esto. Y podemos empezar a hacer un guión para nuestros objetos. Por lo que podemos hacer esto en cualquier lugar. Voy a seguir adelante y sólo voy directo a mi escena de oso. Y haz click en mi oso y pulsa este botón Añadir guión adjunto guión nuevo o existente. En realidad no voy a nombrar desesperación. Voy a nombrar este objeto porque vamos a poder usar este guión en todos nuestros objetos, todos nuestros objetos coleccionables para nuestro juego. De acuerdo, asegúrate de que eso no esté en nuestra carpeta de scripts. Esto está en escenas. No queremos eso. Por lo que queremos abrir esto, volver atrás y seleccionar guiones. Son reales. Por lo que queremos leer como barra inclinada de dos puntos guiones slash objeto, cerrar objetos. Y bien. Muy bien, entonces, ¿qué necesitamos aquí? Vamos a necesitar determinar si nuestro Aquí vamos. Vamos a necesitar determinar si nuestro ratón ha entrado a una zona. Entonces vamos a hacer var mouse Enter. Y pondremos eso en falso por defecto. Porque por defecto probablemente no vamos a tener nuestro ratón dentro de un área. Entonces básicamente no vamos a tener nuestro ratón encima de un objeto para empezar. Y lo que necesitamos hacer es realmente conectar dos señales. Y esto estará viniendo de nuestra zona 2D. Entonces, si lo haces cambiar el nombre de tu área 2D aquí en tu desnudo, asegúrate de que sea el mismo nombre en tu cámara y todos tus otros objetos para esto. Entonces vamos a signo de dólar y vamos a conseguir el área 2D. Y nos vamos a conectar. Y por dentro aquí podemos poner en la señal que queremos conectar. Y para nosotros es ratón entró todo minúscula. Nuestro siguiente argumento es el guión al que queremos adjuntarlo, que es uno mismo. Simplemente queremos ponerlo en este guión aquí. Y entonces la última es la función a la que queremos llamar cuando se emita esta señal. ¿ Qué referencia se va al ratón ingresado? Ahora también queremos conectar una, otra señal para ratón salió. Y haremos lo mismo por nuestra función. ratón salió, así como así. Ahora antes de que nos olvidemos, debemos crear estas funciones. Entonces, ¿a qué entró el ratón func? Asegúrate de poner paréntesis abiertos al final, seguido de dos puntos. Y en la siguiente línea sólo vamos a teclear en pase. Y vamos a conseguir que nuestro próximo también se cree. Ahí vamos. Ahora nosotros, no nos olvidamos también, tenemos estos creados. Y si viste lo que hice ahí, seguí adelante y acabo de hacer doble clic en mi nombre de función aquí. De esa manera sólo puedo copiarlo y pegarlo para asegurarme de que lo tengo exactamente de la forma en que lo escribí la primera vez. De acuerdo, entonces cuando nuestro ratón entra, obviamente el mouse enter debe ser cierto porque ahora nuestro ratón está dentro de la zona. Entonces sigamos adelante y pongamos el mouse enter a true. Y eso significa que cuando salgamos de la zona, tenemos que volver a ponerla en falso. Por lo que el ratón entra igual falso dentro de ratón salido. Por lo que ojalá estés siguiendo. Es bastante sencillo de entender. Ojalá que cuando nuestro ratón entre en esta zona azul, le diga a nuestro guión que lo ponga fiel a centrado en el hombre, deje que nuestro script nodo de que nuestro ratón está dentro de esta área durante todo este tiempo. Y cuando lo saquemos de la zona azul, será considerado falso. Mi oso, creo que va a apretar esto en un poquito. Es un poco demasiado ancho para mí. Está bien. Entonces ahora debería funcionar, lo cual es genial. Y si queremos, podemos entrar e imprimir aquí dos declaraciones. Dentro de Mao centro dirá, y sólo vamos a seguir adelante y navegar olores preimpresión ratón entró. Y cuando salgamos, se imprimirá ratón salido. Está bien, sigamos adelante y pulsemos el botón de reproducción y prestemos atención aquí abajo en tu consola de salida. Y cuando tu ratón entra con el oso ahora centrado y cuando nos vamos, el ratón salió. Entonces podemos ver que eso está funcionando. Nuestra señal está siendo enviada. Y la razón por la que no tenemos que emitir esta señal nosotros mismos es porque zona entró o lo siento, entró ratón, una salida de ratón. Se trata de una señal por defecto que está incorporada en el motor para el área 2D. De acuerdo, entonces nuestro ratón está funcionando. Entonces lo que tenemos que hacer ahora es preocuparnos por nuestro ratón. Así que vamos a configurar nuestro ratón por defecto esta cabeza para proyectar e ir a Configuración del proyecto. Vaya a la pestaña general. Y solo podemos buscar la configuración de nuestros ratones. Ahí vamos. Bajo pantalla, tenemos cursor de ratón, ac imagen personalizada. Adelante y abre eso. Ahora otra vez detectores y seleccionar cursor uno. Entonces esa será nuestra imagen por defecto o el ratón por defecto ahora cuando abramos el juego. Entonces para cambiar esto, cuando se ingrese mouse y MSX necesite, vamos a usar set de puntos de entrada, cursor de ratón personalizado, I. Entonces dentro de esto, en realidad vamos a decirle qué, lo que queremos que sea. Entonces teníamos esto en realidad en nuestro ratón o a nuestro, en nuestro guión global. Por lo que solo podemos hacer click global dot mouse. Ahora la razón por la que solo podemos usar la palabra global aquí, si entramos en la configuración del proyecto de nuevo a nuestra carga automática es por tu nombre aquí. Si quisieras cambiar esto por otra cosa y decir que tal vez soy GB o amarillo o lo que sea, quieres ponerlo ahí dentro. Ese es el nombre que usarías para donde estoy poniendo global aquí. Por lo que por defecto, será el mismo nombre que tu script. Entonces evento global dot mouse click, y eso llamará a este cursor del ratón aquí que hemos cargado. Yo no lo hice. De igual manera, cuando salimos y queremos volver a ajustar nuestro ratón a la forma en que estaba. Entonces input.txt, cursor de ratón personalizado. Y vamos a poner en la norma global del ratón. Está bien, así que eso debería funcionar. Adelante y pulse el botón de reproducción. Y esto es oye, gran ratón aquí. Y ahí vamos. Y entramos, podemos ver claramente que ahora se puede hacer clic. Y obviamente no va a funcionar en una cámara porque el guión no está en nuestra cámara y ahora solo está en nuestro oso con una fila. Ahora tenemos un ratón que cambia y ajusta. Ahora si quieres cambiar la escala de este ratón y puedes hacerlo fácilmente. Solo tienes que entrar en nuestra imagen y simplemente redimensionarla. Pero es simplemente más fácil eso, y eso no es problema. Fácil de hacer. Bueno, yo hago esto. Podría reescalar un poco mi ratón aquí para esto, pero eso es todo. Ya sabes, uh, ahora sabes cómo cambiar tu ratón en función de cuándo entra y sale. Y vamos a estar usando nuestro ratón variable enter aquí para más tarde cuando venga realmente haciendo click en objetos. Pero con eso, ahora tenemos un poco de scripting. Y aquí tenemos nuestra configuración global. Bueno, por ahora. Y ahora podemos ir a nuestra cámara, a nuestro objeto de cámara aquí en nuestra escena. Y podemos seguir adelante y agregar un guión y puedes hacer click en el Plus y navegar a los objetos, o simplemente podemos agarrar objetos dot td aquí y arrastrarlo hacia arriba a nuestra cámara. Y ahora cuando lo abramos, también funcionará en nuestra cámara. Entonces vemos que funciona en nuestro desnudo y funcionará en nuestra cámara. Muy bien, así que ahora lo sabemos, ahora tenemos nuestra configuración de cursor personalizada con nuestros objetos. 6. Collecting objetos: Muy bien, todo el mundo, en este invierno vamos a hacer que nuestros objetos sean realmente clicables. Y vamos a añadirlos a un contenido un conjunto de datos que he recogido elementos. Entonces si seguimos adelante y golpeamos Play, verás que cambié el cursor de mi ratón, lo ajusté por lo que ahora es más manejable. Es la mitad del tamaño que era y tiene un aspecto mucho más normal. Y vemos que funciona, todavía funciona bien para ambos objetos. Está bien, así que para hacer esto, vamos a tener que entrar en nuestro script de datos aquí, o lo siento, en nuestro guión global. Y vamos a añadir una nueva variable llamada libros de datos. Datos. Y pondremos esto igual a ser un diccionario. Ahora un diccionario es un conjunto de datos que pueden contener diferentes tipos de datos dentro de él. Por lo que un diccionario podría tener una lista en él. Podría tener una cadena, como se ve aquí, que es ítems entre comillas. Puede contener números, incluso puede contener otros diccionarios dentro de él. Una manera fácil de contar un diccionario a partir de una lista es que un diccionario tiene los corchetes squiggly, mientras que una lista, tenemos estos cuadrados. Entonces sigamos adelante y vamos a hacer una cuerda aquí y vamos a llamar a esto objetos recolectados. Y pondrá eso igual a un par de corchetes. Ah, mi error. Después de nuestros objetos recolectados, tenemos que poner un colon aquí antes de los iguales. Y en realidad no tenemos los iguales ahí. Mi error, estaba pensando de nuevo en variables. Entonces, y así tenemos datos para variable es igual a nuestros corchetes squiggly. Y dentro de eso tenemos un par de comillas que tienen la palabra objetos recolectados entre ellos, seguido de dos puntos, y luego un par de corchetes. Muy bien, Así que los objetos recogidos aquí va a ser una lista como lo indican los corchetes r, lo cual es genial. Y eso es en lo que vamos a mantener nuestros, hacer un seguimiento de nuestros objetos en. Podemos seguir adelante y guardar eso, esa manera podemos acceder a eso más fácil. Y dentro de nuestro script de objetos, podemos bajar y crear una nueva función. Y esto se llama subrayado entrada no manejada. Como se puede ver ahí, va a aparecer y tiene evento como ser pasado a él. Ahora, no tenemos que usar los respiraderos del mar, así que saldrá con un error diciendo que no se está utilizando el evento. No duele nada dejarlo ahí. Pero algunas personas sí se molestan un poco que aparece igual con Delta en la función de proceso. Si no quieres que eso aparezca, solo puedes poner un guión bajo al principio y ya no aparecerá. Muy bien, en nuestra siguiente diapositiva, necesitamos comprobar si se está presionando el botón izquierdo del ratón. Y revisaremos para ver si nuestro ratón está efectivamente entrado en esa zona. Y si es así, entonces vamos a realizar nuestro real va a hacer lo que necesitamos hacer cada vez que hacemos clic en un objeto. Entonces sigamos adelante y comprobemos si el punto de entrada es acción. Apenas prensado. Ahora no tenemos acción aquí, pero por el momento sólo podemos dejar eso abierto y estamos diciendo y ratón entrar dobles signos iguales porque queremos hacer una comparación es igual a verdad. Poner un colon en el extremo. Ahora la siguiente línea acabaría de golpear pase. Ahora verás que aparece un error en tu pantalla diciendo muy pocos argumentos para su acción, solo presiona. Y podemos resolver eso creando una acción de clic izquierdo. Entonces entramos en proyectos, vamos a la pestaña del mapa de entrada para la acción. Vamos a crear uno llamado clic izquierdo y pulse Añadir. Y verás en la parte inferior de tu pantalla tendremos clic izquierdo ir y pulsar el botón más a la derecha, seleccionar botón del ratón. Y botón izquierdo es lo que queremos seleccionar un anuncio. Y ahora para una discusión dentro de sus acciones acaba de presionar, podemos seguir adelante y hacer par de citas y verás pop up click izquierdo. Adelante y selecciona eso. Y eso nos deshará de los errores que tuvimos. Entonces lo que vamos a hacer es agregar esto a nuestras listas recolectadas justo dentro de nuestro script global, esos datos que acabamos de crear. Entonces para hacer eso, tenemos que acceder a él. Por lo que utilizamos el punto global y el nombre de nuestra variable, que es los datos. Y entonces lo que vamos a hacer es realmente abrir un par de corchetes. Y dentro de esto escribimos en lo que estamos buscando, que van a ser objetos recolectados. Ese es el siguiente nivel abajo. Objetos recolectados, asegúrate de deletrear eso correctamente, y estos serían exactamente los mismos. Y como eso es una lista, podemos simplemente hacer punto, anexar y abrir, cerrar paréntesis dentro de ésta. Dentro de estos paréntesis está en realidad lo que queremos agregar. Entonces anexar, lo que eso hace es anexar agregará un objeto entre estos corchetes en nuestro conjunto de datos. Y solo siempre agregará nuevo artículo al final cada vez. Eso es lo que un pandas anexa agrega un nuevo elemento. Entonces lo que queremos agregar es autonombre de punto. Entonces en este caso esto va a conseguir oso porque nuestro sprite que el guión es honesto no puede soportar para una cámara. Conseguirá cámara por si tuvieras gafas. Tendrá anteojos, ¿verdad? Entonces, cualquiera que sea nuestro nombre de objeto, eso es lo que va a agarrar y eso es lo que vamos a añadir a él. Ahora para asegurarnos de que nuestro oso esté siempre tiene un capital al principio porque se ve bien, mucho más bonito cuando estamos viendo un conjunto de datos. Vamos a llamar también llamado punto. Capitalizar, abrir, cerrar paréntesis. Y eso es lo que va a hacer del primer personaje de nuestro nombre una mayúscula. Y es sólo una mirada más agradable y asegurarnos de que hacemos eso aunque no lo pongamos en nuestro nombre sprite. Por lo que es casi igual que una prueba a prueba de fallos por si acaso lo hemos olvidado. Y por supuesto, una vez que lo recojamos, nuestros objetos deberían, deberían haberse ido. Debería desaparecer, ¿verdad? Entonces podemos seguir adelante y hacer ese ratón, o no nos pondremos en nosotros. Pero en realidad estamos llamando a nuestra función de salida del ratón porque sigue siendo una función, en realidad todavía podemos llamarla normalmente. Y no tenemos que esperar a que se firme una señal, sólo podemos llamarla. Y entonces podemos hacer auto punto Q libre. Y eso se eliminará, haciendo, haciéndolo desaparecer de nuestra escena. Ahora, para asegurarnos de que esto funcione, antes de Q, en el uso de la Q3, realidad seguiríamos adelante y solo imprimimos. Y para un argumento por lo que vamos a imprimir va a ser nuestros datos globales. Y por supuesto esto va a ser nuestros objetos recolectados maduros. Eso lo deletreas correctamente y obtienes tu capitalización de capital correcta. Y de nuevo, eso sólo debería funcionar para un cable desnudo para una cámara porque estamos manteniendo esto lo más abierto posible. Por lo que ahora podemos pasar el ratón sobre nuestro desnudo, nuestro cursor del ratón cambia, haga clic en él. Y vemos en nuestra consola se imprimió oso, desaparece y nuestro cursor volvió a la normalidad. Y ahora si pasamos a nuestra cámara, vemos que cambia aquí. Y si hacemos click en él, veremos la cámara añadida a nuestra lista. Y cuando imprime, deberíamos ver cámara de coma desnuda. Nuevamente con la primera letra siendo capitalizar, que vio algunos. Está funcionando. Ahora tenemos los fundamentos de nuestro pequeño esquema de objetos ocultos aquí pasando. Ahora lo que sería bueno es que tuviéramos un inventario para un juego que pudiéramos ver, porque tal vez, tal vez vamos a encontrar algo que podamos usar más adelante, como una llave u otro objeto para tal vez resolver un rompecabezas o algo así, ¿verdad? A lo mejor deberíamos encontrar un objeto y luego regresar a otra sección de nuestro mapa y usar ese objeto para avanzar. Entonces echaremos un vistazo a sumar en nuestro artículo y poco inventario, ¿verdad? Eso podemos ver así como sumar nuestro objeto hacia abajo y dentro de él cada vez que lo recogemos. Está bien, para que puedas seguir adelante y quieres volver a correr eso? Se puede ver que todo sigue funcionando. Oso de cámara. Oso cámara. No importa en qué orden recogimos. Y todo solo funciona. Está bien. Los veré en el próximo. Vamos a ir a crear nuestra pequeña configuración de inventario. 7. Inventario visual: Muy bien, bienvenidos a todos. Vamos a seguir adelante y crear nuestro pequeño conjunto de inventario. Cuando recogemos un artículo, podemos agregar el nombre del ítem así como una imagen del ítem para que sepamos lo que es visual y fácilmente, fácilmente cuando lo leemos. Entonces vamos a dar click en Main en nuestra escena, hit plus, y vamos a conseguir lo que se llama listas de elementos. Y sólo podemos mover eso. Puedes poner en el lateral igual a 0 en la parte superior, donde quiera que te guste. Voy a poner el mío al fondo de la pantalla. Eso parece un buen tamaño y sólo voy a tirarlo a través. Ahora siempre podemos ajustar esto más adelante. Voy a poner esto a la mente en 10 columnas porque eso se trata lo que debería poder conseguir todo el camino a través tendría un leve aquí obviamente, si tienes el tuyo yendo por el costado, va a ser un poco diferente, en realidad sólo va a tener una columna o tal vez dos dependiendo de qué tan grandes sean tus iconos y no r. Así que vamos a seguir adelante y ahora dar click en icono, y vamos a decir Icon Mode to to top. Si quieres configurar tu Select, puedes. Va a ser un diseño completamente diferente. Lo que eso va a hacer es tener top. Va a tener nuestra imagen en la parte superior y luego nuestro texto debajo de ella no tiene a la izquierda. Y vamos a tener, creo nuestra imagen de la izquierda y luego nuestro texto a la derecha de la misma. Entonces depende de ti cómo quieres hacer eso. Voy a fijar mi escala a Creo que 32 o probablemente sea buena. Podemos ver si queremos cambiar eso. Y después empezamos a sumar artículos y lo hacemos. Si quieres cambiar el nombre de tu lista de artículos a algo como inventario o artículos recolectados o algo así. Definitivamente puedes hacer eso. Yo sólo voy a dejar la mía como lista de artículos porque ese nombre me dice exactamente qué es. Es una lista de mis artículos. Está bien, así que por ahora sólo podemos entrar a nuestro objeto. Artículos. Aquí te presentamos nuestro script de objetos. Está bien, y todo lo que tenemos que hacer aquí es que vamos a bajar a, aquí abajo y nuestra entrada no manejada. Y cuando lo agregamos, este objeto a nuestros datos, podemos seguir adelante y lo puedes hacer antes de que lo hagas, después de que realmente no importa siempre y cuando lo hagas antes de Q gratis. Y vamos a conseguir padre. Entonces si miramos nuestro principal ahí por un tiempo desde nuestro oso o cámaras encendidas, vamos a conseguir padre que nos lleve a nuestra principal. Y nuestra principal tiene acceso a todas estas notas aquí. Entonces somos de Maine vamos a conseguir nodo y el que queremos conseguir como lista de ítems o lo que sea que te adelantaste y nombraste el tuyo. Tan buen punto padre, obtener nodo, abrir, cerrar paréntesis. Y dentro de nuestro argumento aquí, vamos a seguir adelante y conseguir lista de artículos. Y ahora lo que queremos hacer con eso es que queremos agregar ítem, agregar ítem de subrayado. Y el primer argumento que ponemos aquí va a ser el texto. Entonces vamos a hacer self.name. Y como queremos asegurarnos de que todo se mantenga bien y se vea genial, vamos a hacer capitalizar también, igual que lo hicimos cuando agregamos elementos a nuestros datos. Podemos hacer una coma y el siguiente ítem el cual se ve si esto aparece es el ícono. Entonces queremos la textura aquí. Y para eso solo podemos hacer textura de auto punto. Entonces obtendremos la textura del objeto. Entonces conseguiremos la textura que estamos usando para el oso obtendrá la imagen que estamos usando para la cámara, y eso es lo que vamos a usar. Está bien, entonces si seguimos adelante y ejecutamos esto, ahora deberíamos verlo. Añádalo justo en nuestra lista aquí abajo. Ya veremos qué tan grande es. Y aparte de él uno lo haría más grande. Queremos hacerla más pequeña. Entonces voy a dar click en la cámara. Y así de grande es. Para que pueda ver que puedo encogerme mi barra hacia abajo y hacerla un poco más pequeña para el tamaño que recogí aquí. Y si selecciono a mi oso, ahí está. A mí me gusta ese tamaño. Es posible que quieras tu más grande, quizá quieras una más pequeña. De nuevo, eso va a depender completamente de ti. Ahora si tuvieras esto yendo vertical, puedo ver dos columnas siendo bastante buenas aquí a un costado. Entonces algo que voy a hacer aquí es que en realidad voy a tomar mi Git parent dot getName, lista de ítems aquí. Y bajo la lista. Apenas por ahora, voy a seguir adelante y pegar el pecado varias veces. Podrías estar pensando que eso es una locura. ¿ Qué estás haciendo? Bueno, voy a seguir adelante y acaba de golpear play. Y sólo se va a sumar todos estos artículos. Y esto me ayudará a ver el, qué tipo de propagación tengo pasando, ¿verdad? Por artículo así tengo 1, 2, 3, 4, 5, 6, 7, 8, 9, 10. Por lo que puedo ver 10 artículos sólo me lleva hasta aquí. Tengo espacio para más cuando tengo las cámaras y fui, solo tengo barreras. Tengo 12345678910 y tengo todo este espacio extra aquí. Con cámaras. Tenemos 1, 2, 3, 4, 5, 6, 7, 8, 9, 10. De modo que podemos caber diez cámaras a través, pero no podemos caber 10 osos a través. Por lo que necesitamos realmente cambiar eso. Entonces voy a cambiar el mío a 14 y eso debería ser lo suficientemente bueno para conseguir todo a través. Entonces ahora puedo quitar, en realidad yo, me quedaré todo eso por ahora. Haga clic en lista de ítems y estableceré mis columnas de partido 214. Y ahora cuando golpeo el juego, son osos no va todo el camino a través. ¿ Por qué se detiene a las 10? Interesante. Pone el mismo ancho de columna en. Ahí vamos. Eso se ve mucho más bonito. Entonces a pesar de que estamos trabajando con 10 aquí, supongo que no va a exprimir ningún zoológico extra. Eso se ve mucho más bonito. Y puedo ver lo que estoy aquí arriba. Todavía tengo espacio, así que voy a seguir adelante y apretar esto abajo con mi juego aún abierto. Y solo puedes volver a darle un toque. Yo sólo voy a seguir adelante y volver a ejecutarlo. Simplemente voy a mover esto hacia un lado para que pueda ver esto mientras baja esto hacia abajo. Yo quiero ir con ello. Sí, iré con este tamaño para el mío. Y puedo ver aquí mi propio pequeño adelanto. Y tenemos la rueda pequeña aquí para que podamos desplazarnos si alguna vez lo necesitamos, dependiendo de cuántos objetos tengas en tu juego a la vez. Muy bien, entonces antes de que nos olvidemos, volvamos a nuestro script de objetos y eliminemos todos estos. Ahora estamos, no estamos agregando automáticamente en estos artículos. Y podemos ejecutarlo sólo para asegurarnos. Y siempre quieres asegurarte de que no estás rompiendo nada en alguna parte. Adelante y agrega nuestro oso y nuestra cámara, y todo está funcionando quieto. Eso es impresionante. Eso significa que no hemos roto nada. Ahora sí tengo un pequeño bar aquí a un costado. no me gusta realmente, así que voy a hacer mi lista aquí sólo un poquito más grande, sólo para deshacerme de eso. Y ahí vamos. Ya ves ahora se ha ido. Porque no quiero ver eso a menos que tenga más de una línea. De lo contrario es un poco raro y proporciona información falsa a tu jugador. Con un real. Ahora cuando hacemos clic en un ítem, también lo agregará a nuestro inventario visualmente y en el back-end a nuestra lista de datos. Muy bien, entonces a continuación le echaremos un vistazo, echaremos un vistazo a guardar nuestros datos. De esa manera cuando cargamos el juego, en realidad podemos quedarnos con los objetos que teníamos, ¿verdad? Porque no quieres tal vez terminar el juego y luego cargarlo de nuevo. Y entonces has perdido todo tu progreso, ¿verdad? A lo mejor estás haciendo una tasa de juego más larga. Ahora si no ahorras, entonces es un poco mejor para juegos más cortos. Pero siempre es agradable tener esa opción de ahorro ahí dentro. 8. Guardar y cargar los datos: De acuerdo, si uno vamos a repasar guardando y cargando nuestros datos en nuestra escena. Entonces lo primero que voy a hacer es que voy a dirigirme al proyecto. Consiguió una configuración de proyecto. Y bajo config y nuestra pestaña General bajo aplicación, voy a seguir adelante y encender uso directorio de usuario personalizado. Ahora lo que va a hacer es dentro del directorio de usuarios, todos los OSs tienen uno. Si no estás seguro de dónde está, puedes intentar deslizarte hacia arriba por las notas del directorio de GoTalk te muestran la ubicación para tu sistema operativo específico. Para Windows, está en el AppData. Para Mac y Linux. No estoy un 100 por ciento seguro de arriba mi cabeza. Pero vamos a encender eso. Y con eso encendido, creará una carpeta llamada juego de rompecabezas de objetos ocultos, escribirá el nombre de nuestro proyecto. Si tienes la frecuencia tienes que pasar por una carpeta llamada Good Til y entonces tienes que entrar a otra carpeta con eso y entonces puedes encontrar tu proyecto. Por lo que me gusta usar directorio personalizado. Se ve un poco más profesional para que tenga su propio área, la casa o tus datos. Entonces vamos al guión y vamos a estar entrando en nuestro guión global. Y vamos a necesitar dos funciones. Vamos a necesitar 14 datos guardados. Y vamos y uno a cargar nuestros datos. Vaya, ahí vamos. Por lo que empezamos con guardar datos. Para ello, vamos a crear, necesitamos una nueva variable. Simplemente lo vamos a llamar f. Y esto va a ser para File New. Ahora eso es archivo con F mayúscula con paréntesis de cierre abierto al final de nuevo. Y vamos a hacer F punto abierto porque queremos abrir un archivo, ¿verdad? Tenemos que abrir algo para poder leerle o escribirle. Queríamos directorio. Y vamos a hacer usuario colon slash, slash, ¿verdad? Y solo vamos a llamar a nuestro info data dot DAT. ¿Está bien? Y luego haremos una coma y necesitamos otro argumento aquí. Y como pueden ver, pero ella necesitaría saber si sólo estamos leyendo de un archivo o si vamos a poder escribirle y modificarlo. Ahora, estamos salvando nuestros proyectos. Entonces obviamente queremos escribir en nuestro expediente, ¿verdad? Porque queremos escribirle nueva información. Entonces podemos hacer F punto, derecha, y la derecha está en todos los gorras. En la siguiente diapositiva, podemos hacer el ahorro real, que va a estar almacenando nuestros datos para hacer F dot store line. Y luego dentro de los paréntesis aquí, en realidad estamos deshacer para subrayar y Jason y abrir, cerrar paréntesis y dentro de estos van a poner datos. Sólo voy a poner nuestros datos. Y entonces cada vez que termines con un archivo, ya sea que lo estés guardando o cargándolo, leyendo de él, no importa. Siempre ciérralo al final. Por lo que f punto cerrar, abrir, cerrar paréntesis. Ahora por el bien de esto, también voy a hacer OS dot shell open. Y luego OS dot. Si solo escribo usuario y te sientas ahí, obtén directorio de datos de usuario. Ahora si esto no te funciona, entonces de nuevo, puedes seguir adelante y consultar en línea la documentación para ver exactamente dónde está para ti. Lo que esto debe hacer es abrir tu directorio de datos en tu sistema operativo. Y esto sólo nos permitirá llegar rápidamente a ella para que podamos ver. Ahora de qué sirve llamar guardar si no tenemos nada que decir, ¿verdad? Entonces sigamos adelante y guardemos eso y pasemos a nuestro script de objetos. Y cuando estamos Q3 antes de que nos cue para mí, Vamos a seguir adelante y llamar a global dot save data. Ahora, podemos guardarlo cada vez que recogemos un artículo o recogemos uno. Entonces sigamos adelante y corramos esto y vamos a recoger al oso. Y ya ves, debería abrirse para ti ahí mismo. Y sólo sigue adelante. Se puede ver el punto de datos DAT se ha creado allí. Y si hacemos doble clic en eso, solo puedes abrir eso con el Bloc de notas. Verás nuestro objeto. Tenemos objetos recolectados y tenemos a nuestro oso ahí dentro. Y yo, cuando agregamos nuestra cámara y hacemos click en eso, podemos hacer doble clic y volver a abrir eso. Y ya veremos que ahora tenemos nuestro oso y nuestra cámara. Por lo que vemos ahora nuestra información se está guardando y almacenando en nuestro equipo. No obstante, en realidad no estamos cargando y revisando nuestra escena ni nada por estos objetos. Entonces aunque abramos ahora una copia de seguridad, pesar de que son datos NR, todavía podemos ver nuestra cámara y nuestra recámara puede seguir recolectándola una y otra vez. Por lo que necesitamos ahora escribir nuestra sección de carga. Entonces, vayamos a lo global. Y sabemos que esto funciona. Entonces ya no necesitamos abrir eso. Depende de ti si quieres dejar eso ahí, pero se pondrá un poco molesto una y otra vez. Entonces vamos a empezar igual. Necesitamos un archivo, algunos de nuestros f igual Archivo, Nuevo. Vamos a abrir mismo Directorio, Usuario colon slash slash data dot DAT. Ah, antes de que hagamos eso, así que en realidad solo voy a darle a Tab en eso para tocarlo. Y por encima de eso, en realidad vamos a comprobar si el archivo ya existe. Ahora nosotros si lo hace, entonces cargaremos nuestros datos. Entonces, ¿qué hacer si existe el archivo app.py? Y luego pasaremos en una cuerda. Entonces nuestra ruta que solo usa tu barra inclinada de puntos puntos de datos DAT, y un dos puntos al final de eso porque es una declaración if. Entonces diremos si existe un archivo, f punto abre nuestros datos. Y luego necesitamos leer de ella porque queremos cargar la información por lo que queremos ver qué hay en ella. No queremos escribirle. Simplemente queremos echarle un vistazo. Y luego estableceremos datos. Por lo que nuestro argumento en la parte superior son variables. Y dijimos que igual a analizar y Jason. ¿ Y qué obtiene el punto F como texto? Y luego, como dije antes, cada vez que terminemos con ello, siempre cierras tu expediente. Está bien, vamos ahora y estamos listos función podemos llamar a un dato de carga. Y después de cargarlo, podemos seguir adelante e imprimir datos. Y si quieres comprobar eso, asegúrate de que esté cargando y todo, queremos tener un comparador. Adelante e imprime antes y después de que se cargue. Entonces ahora si golpeamos Play y echamos un vistazo a nuestra consola de salida, vemos que los objetos recolectados están vacíos y ahora está desnudo y cámara. Por lo que nuestros datos se están cargando en nuestra variable, que es hermosa. Es genial, eso es exactamente lo que queremos. Ahora el problema es, es que aún tenemos nuestros objetos en nuestra escena cuando nuestros datos sí se cargan. Entonces necesitamos arreglar eso, ¿verdad? Tenemos que cambiar eso. Por lo que en el siguiente video, vamos a repasar quitando nuestros objetos de nuestra escena. Y tal vez echemos un vistazo a añadirlo a nuestra barra de artículos también. Una vez cargados nuestros datos. 9. Cargar datos al invento: Muy bien todos, vamos a empezar con la carga, poder cargar nuestros objetos de esa manera. Porque ya ves cuando golpeamos Play, una vez que los hayamos recogido, en realidad los mantendrá aquí en lugar de golpear play. Y podemos simplemente constantemente seguir abriendo una y otra vez. Y veo que solo constantemente se suman a nuestra lista. Entonces lo que voy a hacer es antes de que empecemos aquí, es que en realidad voy a abrir esto para poder volver a borrar mis datos, porque tengo demasiadas cosas ahí dentro. Por lo que OS dot obtener directorio de datos de usuario, y voy a tocar Play para que rápidamente pueda subir eso y eliminar. Está bien. Y me quitaré eso. Muy bien, Ahora estamos listos para irnos. Por lo que sí quieres venir a tu script global porque en realidad no podemos obtener r cuando los datos están dentro de nuestra carpeta de rutas aquí. Una vez que exportamos el juego, realidad ya no podemos usar en estas imágenes. Simplemente no se nos permite acceder a ellos. Entonces lo que vamos a hacer es tomar los objetos que tenemos y los vamos a guardar externamente para que podamos acceder a ellos más adelante. Entonces voy a crear una nueva variable. Voy a llamar a estos GameObjects. Y esto sólo va a ser una lista. Entonces cuando array, así que voy a seguir adelante y enumerar ahí dentro. Voy a añadir cámara. Y entonces mientras estoy aquí, también voy a seguir adelante y añadir que sólo tenemos que hacer esto por nuestros objetos coleccionables, ¿verdad? Entonces, al igual que el de nuestro cursor, no necesitamos hacer eso. Nuestras capas, no necesitamos hacer eso. Nuestra llave. Deberíamos hacer eso y justo, por si acaso nuestro jugador dijera parar antes de usar nuestra llave. Entonces sigamos adelante y agreguemos la llave del sótano en sus cerraduras. No necesitamos hacerlo porque eso se mostrará durante la jugabilidad. Entonces no deberíamos necesitar eso. Y que por ahora eso se parece a todo lo que necesitamos. Entonces sigamos adelante y creemos una nueva función aquí abajo. Y voy a llamar a esta copia objetos. Y lo que vamos a hacer es que necesitamos conseguir un directorio. Ahora si has pasado por el Explorador de archivos o Finder en Mac, creo que es como que vas a estar pasando por archivos. Y cada uno de estos archivos se llama directorio. Por lo que necesitamos crear uno nuevo. Por lo que var es igual directorio dot nu. Y ahora vamos a ver si está bien abrir. Entonces si no tenemos ningún error, ¿verdad? Entonces después de punto abierto y el directorio quieren abrir un quiste, nuestro directorio de usuarios. Y si eso son libros, y no queremos el interior, quieren el exterior de los paréntesis. Entonces solo voy a comprobar si está bien. Entonces si no hay errores al acceder a esta carpeta, entonces lo que vamos a hacer es hacer dir dot hacer ahí. Entonces vamos a crear un nuevo directorio. Entonces voy a crear una carpeta. De esa manera todo no se vuelve todo revuelto y podemos mantener las cosas limpias. Y sólo vamos a escribir en directorio de usuarios o usuarios aquí. Y luego vamos a sumar objetos. Entonces lo que quieras que sea el nombre de tu carpeta, voy a llamar a mis objetos. Ahora quiero hacer por OBJ en nuestra variable up top GameObjects. Entonces para, por cada elemento que está en nuestra lista, Hagamos esto. Ahora. Donde digo para OBJ y GameObjects, que OBJ puede ser cualquier cosa que quieras para yo 44 cosas donde las cosas, lo que quieras poner ahí. Es sólo una palabra de portador de lugar que en realidad no significa nada. Es sólo un sustituto para cualquier artículo que tengamos que actualmente se está recorriendo. Entonces cualquier cosa que le hagamos a esa OBJ que estamos usando ahí se va a correlacionar con cada objeto de nuestra lista. Entonces para OBJ y vamos a hacer, hacer una copia, así dor copia punto. Y la forma en que funciona la copia es que escoges una ubicación inicial y el punto final que quieres guardarla. Entonces para aquí sí levantamos barra de barra de colon porque está en nuestros rojos, ¿verdad? Y luego para nosotros es dentro de texturas, carpeta Texturas. Y entonces en realidad podemos simplemente hacer por ciento S dot PNG. Ahora por ciento S es en realidad un positor. Y para qué eso es un tenedor de plaza es para lo que declaramos por fuera, así que solo hacemos por ciento y luego lo que pongamos después de eso es lo que se va a llenar en ese por ciento S. Así que hacemos por ciento punto OBJ. Y ahora sea cual sea el objeto, porque va a ocupar ese lugar. Entonces si miramos la parte superior, tenemos la llave del sótano de la cámara del oso. Entonces vamos a reemplazar ese número. Entonces vamos a tener texturas slash bear dot PNG, texturas slash cámara dot PNG texturas slash sótano qi dot PNG, ¿verdad? Entonces vamos a hacer eso constantemente. Entonces vamos a mirar a través de nuestra lista y copiar todos esos uno por uno. Iremos coma. Ahora es aquí donde queremos copiarlo. Cuál va a ser nuestro directorio de usuarios. Y luego nos vamos a quedar dentro de la carpeta. Acabamos de crear nuestra carpeta de objetos. Y luego haremos otra barra. Y otra vez por ciento S dot PNG. Y al igual que antes, vamos a llenar eso con nuestra OBJ u objeto. Ahora si fuéramos a ejecutar esto y abrirlo. Por lo que arriba en la lista, antes incluso de cargar nuestros datos, vamos a seguir adelante y hacer copiar objetos. Y yo sólo voy a seguir adelante y hacer abrir mi directorio. Una vez que haya terminado de cargar, así que vamos a tocar Play. Y ahora deberías ver la carpeta de un objeto que se ha creado. Y si vas dentro de eso, verás todos tus objetos de esa lista. Y eso es genial. Entonces ahora que están fuera de nuestro juego y están en algún lugar seguro como o usan un directorio, realidad podemos acceder a esto. Y ahora podemos usar esto, estas imágenes para aplicar a los objetos que queremos agregar a nuestro inventario cuando carguemos. Y luego cuando tengamos eso, entonces podemos usar son objetos recolectados. Datos aquí arriba que cargamos para empezar a escanear por nuestra escena para eliminar objetos. Y, y realmente tenemos sólo tener un Estado de ahorro y carga completo trabajando en esto. Ahora si no quieres que tus datos aquí guarden cada vez que recojas un objeto, entonces solo puedes quitar la línea aquí. Pero solo recuerda crear un botón de guardar o lo que sea, así lo hace tu juego. Ahorra en algún momento. Para mí, sólo voy a dejarlo así que ahorra después de cada vez que escogemos un artículo. Ahora nosotros, nunca perdemos el progreso como jugador. Muy bien, entonces ahora que tenemos eso, realmente podemos enfocarnos en cargar nuestro objeto en nuestra lista de artículos, ¿verdad? Entonces vamos a pasar a nuestra escena principal aquí. Y en realidad vamos a crear un guión sobre nuestro principal. Entonces vamos a añadir un nuevo guión y madurar va a la carpeta de scripts. Y voy a seguir adelante y sólo dejar el mío como principal para el nombre. De acuerdo, entonces vamos a necesitar algunas variables aquí. Veamos cuáles vamos a necesitar? Vamos a necesitar ver, tienes uno principal aquí. No necesitamos nada ahí. Sí. Muy bien, así que vamos a necesitar para crear uno llamado Voy a establecer eso igual a 0 por defecto. Y ¿necesitamos textos sí. Para crear también una variable llamada texto. Y esto va a ser un tenedor de lugar para texturas. De acuerdo, entonces lo primero que vamos a necesitar, y podemos deshacernos de la función de proceso aquí. En realidad vamos a crear una función que creará las texturas a partir de esos objetos, o lo siento, a partir de esas imágenes que hemos copiado a nuestro nuevo directorio. Entonces vamos a seguir adelante haría func crear textura. Y pasaremos con un nombre de objeto. Entonces que esto, esto tomará el nombre de nuestro objeto que pasamos y luego conseguiremos la imagen para ello y luego crearemos una textura a partir de ella que luego podremos usar para inventario para cargar eso. Por lo que a partir se creará una var para IMG. Esta será nuestra imagen. Y esto será igual a image dot nu para una nueva imagen y hacer IMG dot load. Y esto tomará un camino, una cuerda. Entonces esto y pasaremos en nuestro usuario. Y luego nuestra carpeta de objetos que creamos. Y luego por ciento S dot PNG. Y por supuesto, pasaremos en esa OBJ a nuestro marcadores de posición. Después podemos ir a Texto para obtener nuestra textura. Y pondremos eso igual a una textura de imagen. Y hacemos punto de texto crear textura. O lo siento. No queremos crear, queremos crear a partir de imagen. Y sólo pasaremos en nuestro IMG la imagen que hemos cargado. Entonces con eso nos llevaremos esto. Entonces otra vez, vamos a pasar, y por ejemplo, si estamos buscando al oso, y si pasamos el objeto oso a nuestra función de crear textura aquí, cargaremos la imagen del oso y luego convertiremos esa imagen en un textura que podemos usar. De acuerdo, así que aparte de crear una textura, ahora obviamente necesitaremos poder asignarla, ¿verdad? Por lo tanto, agreguemos nuestros recolectados a nuestra lista. Por lo que funk, añadir recogidos a la lista. Siempre se quiere tener su función nombrada apropiadamente. De esa manera sólo puedes mirar el nombre y saber lo que hace. Está bien, así que sigamos con eso. Entonces diremos mientras yo es menor que, así que recuerda yo en la parte superior, así que actualmente es 0, menos que datos de duda global. Y vamos a hacer por nuestros objetos recolectados. Aquí vamos. Y vamos a conseguir el tamaño de eso. Entonces eso son tarifas que no nos dices como cuántos artículos hay en eso. Entonces si tienes un artículo y yo es 0, cargaremos nuestro primer artículo, ¿ verdad? Porque es menos que eso. Entonces si ese es el caso, entonces vamos a llamar a crear textura. Y vamos a pasar datos globales, ¿verdad? Se recogen objeto, objetos recogidos. Y luego hacemos otro par de corchetes y pasamos en i Así que vamos a pasar en ese número por ese índice. Y si echamos un vistazo, Así los objetos recogidos yo siendo 0 nos va a dar el primer objeto. Y entonces uno nos dará el segundo, dos para el tercero, tres para el cuarto, y así sucesivamente y demás hasta que pasemos todo el camino por todos nuestros objetos, ¿verdad? Y entonces podemos hacer para conseguir nodo. Y el nodo que queremos conseguir, claro que es nuestra lista de artículos, ¿no? Y haremos punto add item. Y pasaremos en global. Los datos son objetos recolectados pasarán un ojo, y por supuesto vamos a capitalizar eso. Y luego por la imagen que se pasa en textos, que ya está sosteniendo nuestra nueva imagen. Gracias a nuestra función previa que utilizamos para crear la textura. Y para evitar un bucle, podemos hacer yo más igual a 1. De acuerdo, así que mientras hacemos esto, hay una segunda forma de que podemos hacer esto. Entonces puedo mostrarles que esta es una forma de hacerlo usando un bucle while. Ahora si abriéramos eso y echáramos un vistazo, ves nuestros objetos, carga nuestra cámara y nuestra desnuda, perfectamente bien. Entonces esa es una forma en que se puede lograr esto. Ahora, te voy a mostrar otra forma de que puedes hacer esto. Y va a depender de ti de qué manera quieres hacerlo así como mostrarte dos métodos alternativos para hacer lo mismo. Entonces para esto, podemos echar un vistazo y echar un vistazo a hacer un bucle for. Entonces para i dentro de nuestros GameObjects. Entonces si recuerdas, dentro de nuestro script global, usamos un bucle for. Para I. En, ahí vamos. Esto recorrerá todos nuestros objetos de esta manera en lugar de usar una variable para yo con un número, ¿verdad? Porque estamos asociando un número con eso. Entonces para esto, solo podemos llamarlo 4, 4, 0, solo para mantener esto un poco diferente, un poco menos confuso. Entonces digamos para o u OBJ como hicimos en nuestros objetos en lo global. Por lo que esto será un poco más familiar. Entonces diremos por objeto aquí, ¿qué queremos hacer? Queremos crear un objeto, crear una textura. Sólo que no necesitamos esta larga cuerda. Basta con pasar en la OBJ. Y luego lo mismo con nuestro nodo get en la siguiente línea. Podemos quitar esto y simplemente poner OBJ en mayúscula y otra vez pasar en nuestra textura. Entonces si fuera a comentar esto, así que solo resaltaré todo eso y le pegaré a Control K. Eso hará que ese código no se ejecute. Por lo que ahora estamos ejecutando nuestro for-loop. Y si fuera a golpear Play, ves que se carga y tenemos aquí ambos artículos con sus fotos y todo. Entonces esas son solo dos formas en que puedes hacer la misma operación aquí. Entonces solo pensé que quería aprovechar esta sección aquí para especie de mostrarte dos maneras diferentes de lograr lo mismo en programación y codificación. Aquí, todo se trata de resolver problemas y encontrar una manera de resolver tu problema ¿verdad? Ahora, nuestro problema fue cuando nos necesitábamos obtener una textura de nuestra imagen con el fin de agregarla a nuestra lista, lista de artículos. Y estas son dos soluciones diferentes para eso. Por lo que te dejaría eso a ti. Cualquiera que quieras usar depende completamente de ti. Aquí no importa. Pero con eso, nos detendremos aquí, tenemos eso cargando. Y en el siguiente echaremos un vistazo a quitar nuestros artículos de nuestras escenas. 10. Eliminar los objetos de la escena: Muy bien, todos en este video, vamos a seguir adelante y echar un vistazo a quitar nuestros objetos de nuestra escena. Ahora lo que queremos decir con eso es cuando jugamos, podemos ver que tenemos nuestros objetos añadidos a nuestro inventario. Pero, ¿dónde seguirías adelante y las recogerías? ¿ Otra vez? No queremos que eso suceda. Queremos si hemos recogido el artículo, queremos que desaparezca el artículo. No queremos pensar en lo raro que sería si vas a la cocina y dices que coges un trago, ¿verdad? A lo mejor le saca café, coges una taza de café, entra a la sala, puede ver televisión en vivo por la mañana. Y optas de nuevo a la cocina y hay otra taza de café. Es como duplicado de alguna manera. No queremos que eso suceda. Entonces queremos poder quitarle ese café para que cuando vuelvas ahí, no esté. El único ejemplar que tienes es un corte que ya recogiste. Entonces vamos a hacer lo mismo, pero con nuestra desnuda y nuestra cámara aquí. Entonces vamos a hacer esto dentro de nuestro guión principal aquí. Y vamos a usar dos funciones para esto porque no queremos que nuestra función se haga realmente larga. No quieres tener una función conseguir súper larga. Simplemente se ve mal. Y yo diría que es como una mala práctica ¿verdad? En este punto. Por lo que trataremos de minimizar esto mediante el uso de dos funciones que ambas hacen una cosa específica. Entonces vamos a crear nuestra función. Vamos a conseguir quitar objetos de la escena. Y en eso se va a especializar esto, quitando todos nuestros objetos. Entonces vamos a hacer si global, si puedo deletrear datos de puntos. Lo hice otra vez. coleccionables o lamentables, recolectados clicked. Entonces al decir si objetos recolectados, básicamente estamos diciendo si tenemos elementos aquí, porque si no hay elementos en esta lista, lo hará, devolverá falso. Y si es falso, entonces nuestro código no se va a ejecutar. Entonces si sí tenemos artículos, tenemos al menos un artículo en nuestra lista. Entonces vamos a hacer por artículo en. Y yo sólo voy a copiar esto porque ya lo hemos escrito tantas veces ahora. Entonces por cada elemento de nuestra lista, así que si tenemos artículos en nuestra lista, vamos a hacer esto a cada elemento. Y vamos a empezar por comprobar si hay un espacio en nuestro artículo. Porque recuerda si tenemos nuestra llave del sótano, por ejemplo, tenemos un espacio y nuestro nombre del artículo, nombre del artículo. Sería raro tenerlo como mono base todo aplastado sin espacio. Entonces vamos a comprobar si el objeto tiene un espacio, ¿no? Si espacio en el elemento. Entonces lo que vamos a hacer es cuando el artículo DO es igual al artículo dot replace, no reemplazado por, sino que simplemente reemplaza. Y lo que eso va a hacer esto espacialmente va a reemplazar el primer argumento que pasamos. El segundo. Entonces vamos a hacer nuestros paréntesis, o lo siento no los paréntesis son un par de citas con un espacio intermedio. Entonces vamos a reemplazar todos los espacios con, solo vamos a hacer comillas dobles sin nada en el medio. Entonces los voy a tomar o espacio y reemplazarlo por nada. Entonces, lo que hace esta relación es eliminar cualquier espacio en nuestro nombre de artículo. Ahora, después de que hayamos hecho eso, podemos ir a la siguiente línea y podemos borrar una vez para poder volver a salir. Entonces cuando el mismo nivel que nuestra declaración if, y sólo vamos a llamar eliminar elemento de parecen. Ahora vamos a tener un poco de error aquí porque aún no hemos creado esto, pero estamos a punto de hacerlo, y vamos a simplemente pasar en ítem a nuestro objeto o pasar esto a nuestro argumento. Y ahora para nuestra nueva escena, o lo siento, una nueva función, podemos crear esa fuente puede quitar elemento de ver. Ahora tomará una discusión, un argumento ahí. Y fue un colon y pase. Y verás que ahora desaparecerían todos nuestros errores. Entonces, ¿qué queremos hacer con ese artículo? Queremos echar un vistazo a todos los niños que son todo lo que son los niños de nuestra escena principal aquí. Y queremos quitar cualquiera de ellos que ya hemos recogido, ¿verdad? Entonces si hemos recogido al oso, queremos quitar al oso. Si recogimos la cámara, queremos quitar la cámara. Entonces lo que vamos a hacer, primero, necesitamos conseguir una lista de todos nuestros hijos y nuestro árbol. Entonces vamos a ver y revisar, conseguir una lista de todas nuestras notas aquí. Varios ingresos para niño en self.edad, niños. Entonces para todos nuestros artículos aquí, todos nuestros artículos, lo que vamos a hacer es comprobar si el artículo es igual al nombre de punto child. Entonces vamos a comprobar si el artículo que pasamos, que va a ser alguno de nuestros objetos aquí sin espacio, cualquier objeto que hayamos recogido. Si nuestro objeto está en cualquier parte de esta lista. Haz esto. Y lo que vamos a hacer es que simplemente vamos a hacer conseguir nodo. Y hacemos un punto. Whoops. Perdón si tenemos que poner eso entre comillas, hacemos un punto, lo que significa yo mismo, y hacemos una barra. Y lo que vamos a poner ahí es que en realidad sólo vamos a tener nuestra segunda cita ahí, ¿verdad? Y vamos a hacer espacio más artículo. Y eso va a conseguir básicamente el objeto que coincide con nuestro artículo. Y luego podemos llamar gratis a Q. Entonces básicamente vamos a eliminar cualquier elemento que coincida. Ahora creo que podríamos hacer esto, no podemos superar esto, no permitirnos? Muy bien, entonces deberíamos poder usar nuestro Marcador de posición así. Y ahora cuando carguemos, podemos seguir adelante y, y ya están listos para funcionar. Podemos llamar quitar objetos de la escena. Y si golpeamos Play, ahí, todos estamos desnudos y nuestra cámara se ha ido porque no hemos cobrado. Y de nuevo, sólo debería tener una configuración de botón para este directorio get user data. Entonces solo para mostrarte funciona. Voy a seguir adelante y borrar mis datos. Entonces si empezamos un juego totalmente nuevo, se ve así. Tenemos nuestra cámara y nuestro oso ambos aquí. Voy a dar clic en comprar Oso. Ciérralo. Deja de jugar, y entonces tal vez vuelva y vuelva a jugar mi juego más tarde escribo. Nuestro oso se ha ido, pero nuestras cámaras, así que aquí porque aún no hemos recogido eso. Y nuestro oso ha cargado representante aquí mismo en nuestro inventario. Y ahora podemos hacer click en nuestra cámara. Y si dejamos de jugar, tal vez volver más tarde. Nuestro oso se ha ido y nuestra cámara se ha ido. Entonces ahora tenemos artículos siendo retirados de nuestra escena. Los hemos recogido, lo cual es genial. Estamos agregando nuestros ítems a una lista de datos que ahora podemos guardar y cargar. Y hemos copiado objetos de nuestro juego hacia, hacia la computadora para que realmente podamos acceder a ellos para crear nuestras texturas a partir de ella. Está bien, eso lo hará con este video. Y el siguiente. No sé ¿Qué debemos hacer? A lo mejor le echaríamos un vistazo a unos objetos arrastrables. Echaríamos un vistazo a eso en el siguiente. 11. Objetos arrastrables: Muy bien, todos, en este video vamos a repasar creando o cómo crear un objeto arrastrable. Entonces vamos a poder poner arriba en nuestra pantalla y luego arrastrarla. Y para nuestro ejemplo, vamos a usar un sobre porque tal vez, tal vez quieras crear un mapa donde tal vez tengas un escritorio, ¿verdad? Y tienes que destapar la llave moviendo sobre, ¿verdad? Y luego podemos usar esa llave más tarde para desbloquear algo se usan en objeto para un rompecabezas o algo así, ¿verdad? Entonces sigamos adelante y creemos nuestro objeto arrastrable. Y vamos a empezar justo, tal como lo hacemos normalmente. Entonces vamos a tener un sprite Con un área y una colisión. Voy a nombrar mi sobre raspado. Voy a mover mi sprite o mi imagen dentro. Entonces voy a traer mi sobre. Tenemos nuestra imagen y ahora podemos establecer nuestra forma de colisión, que otra vez, sólo vamos a usar un rectángulo, un ajuste lo mejor que puedas. Aquí vamos, Eso se ve bien. Impresionante. Y podemos guardar esto un sobre, ponerlo en nuestra escena. Excelente. Muy bien, entonces nuestro objeto de paneles de yeso va a necesitar un guión. Adelante y pon eso en la carpeta de guiones. Y voy a llamarlo arrastrable. Por lo que este será nuestros objetos arrastrables están listos. Entonces unas cosas que vamos a necesitar aquí. Para nuestro objeto arrastrable, vamos a necesitar un mouse enter variables, por lo que necesitamos saber si nuestro ratón ahí dentro, Es en la zona que vamos a necesitar. Siguiendo, que por defecto será falso. Tomaremos una posición de inicio esta derecha, sólo podemos arrastrarlo hasta ahora. Y si quieres asegurarte de que no puedes asignar un tipo diferente de valor a una variable, que puede hacer es solo hacer dos puntos y luego puedes asignarle una clase así. Y entonces podemos ser dueños de nuestro Starbucks y sólo será siempre un factor también. Si intentas asignarle algo más, provocará un error. Entonces, por ejemplo, si siguiendo, si quisiéramos aquí, podemos ir así y llamarlo bool. Y entonces pondríamos igual a cualquiera que sea el valor. Y no es algo que tengas que hacer, pero es algo que puedes hacer y depende completamente de ti. Otra cosa que podemos hacer, que en realidad vamos a aprovechar aquí es la exportación. Y esto nos permitirá cambiarlo por el lado derecho dentro de nuestro inspector, lo que realmente ayuda con hacer guiones y reutilizables. Y esto puede arrastrar distancia. Y solo haremos de esto un int, que será un entero, un número entero. Entonces si decimos que si haces click en tu sobre ahora notarás en el lado derecho, verás aquí una sección para nuestra distancia de arrastre. Entonces en nuestra función lista, lo primero que vamos a hacer es que vamos a establecer nuestra posición de inicio va a ser igual a la posición de autof.age. Por lo que obviamente nuestra posición de partida va a estar donde engendramos este sobre en él. Vamos a conectar dos señales, que podemos tomarlas directamente de nuestros objetos. Por hacer exactamente lo mismo, vamos a conectar nuestro ratón entrando y salida del ratón. Entonces, para ahorrar tiempo, solo copiaremos ambos pases. Y como estamos tratando con exactamente los mismos nombres de funciones, también podemos traer esos también. Y no necesitamos cambiar en absoluto estas funciones porque vamos a establecer estas verdaderas y falsas cuando nuestro ratón está dentro y fuera. Y por supuesto queso o cursor para hacerle saber a nuestro jugador. Para que esa porción de nuestros objetos permanezca aquí. Lo que sí tenemos que añadir es en realidad otras dos secciones de que acabo de bajar aquí. Y vamos a hacer una entrada no manejada, lo cual es bueno para cuando estás creando un juego aquí. De esa manera no estás haciendo un cheque cada segundo. Y sobre todo porque no necesitamos la función de proceso, ¿verdad? No necesitamos tiempo para dictar nada en este juego. Entonces podemos entrar y podemos hacer una comprobación si la entrada es pulsación de botón del ratón y solo podemos poner en el botón del ratón uno, que será un clic izquierdo. Si quieres usar, es la acción presionada. Entonces puedes seguir adelante y usar eso para, y puedes poner en nuestro nombre de acción, que fue click izquierdo. Entonces si quisieras, podrías hacer eso, que serían solo garrapatas sentadas ahí. Entonces si quisieras hacer eso en su lugar, puedes o uno de esos o trabajar por esta situación y no afectará nada. Pero vamos a conseguir un cheque. Si estamos presionando nuestro ratón con clic izquierdo, ingrese esto igual a true, entonces vamos a establecer el siguiente a true. Y en su mayor parte podemos simplemente copiar esto hacia abajo. Establezca el siguiente en falso. Y en realidad lo que vamos a cambiar aquí es que en realidad vamos a poner un signo de exclamación justo antes de poner en nuestra entrada. Y lo que eso significa es que no. Entonces estamos buscando algo que no sea cierto. Entonces si no botón del ratón presionado tasa larga. Entonces si no estamos presionando el clic izquierdo y el centro de Mao es cierto, entonces lo siguiente es falso. Por lo que sólo va a ser cierto cuando estemos dando click. ¿Está bien? Y necesitamos una función más aquí, que será una función de proceso. Y esto es algo que va a correr cada fotograma en nuestro juego. Entonces algo que está funcionando constantemente en todo momento. Y lo que vamos a hacer es que vamos a comprobar si sigue. Igual verdadero, que sólo es cierto cuando estamos, nuestro ratón está sobre un objeto y estamos haciendo clic y manteniendo pulsado el botón del ratón. Y luego vamos a hacer y comprobar si self.position ayuda si deletreamos bien eso. Entonces self.posición, y luego vamos a revisar la distancia, distancia 2. Y eso va a llevar un vector a una variable. Entonces lo que vamos a pasar aquí es nuestra posición de inicio. Queremos obtener la distancia numérica entre donde estamos y donde empezamos, donde está sobre en la pantalla y donde empezó, se ha ido punto. Y vamos a decir que si eso es mayor o igual a nuestra distancia de arrastre, entonces simplemente pasaremos el siguiente a falso. Entonces esto nos va a permitir, cuando estamos arrastrando nuestro sobre, sólo vamos a poder mover nuestro sobre a cierta distancia de donde yo respondo. De esa manera no puedes simplemente levantarlo e ir arrastrarlo a cualquier parte de la pantalla. Solo puedes moverlo una cantidad establecida de distancia. Y ahora solo pondremos otra revisión tu sangría aquí. No queremos conseguir demanda o constantemente suceden cosas raras. Entonces si no estamos pasando nuestra distancia de arrastre, entonces por supuesto queremos arrastrar nuestro objeto, que me tomó self.age, establecer posición. Y entonces qué te lo vamos a poner? Vamos a ajustarlo a nuestra posición del ratón, así que obtén la posición global del mouse. Entonces si pasamos por esto, si tenemos nuestro ratón encima del objeto, el ratón ingresado es cierto. Y si hacemos clic y mantenemos presionado nuestro botón izquierdo del ratón, ya sea mediante el uso del botón del ratón presione con uno como argumento o usando es acción presionada. Y pasando en nuestra entrada de click izquierdo. Vamos a convertirlo en verdad. De lo contrario sería más turno siguiendo cierto. De lo contrario es falso. Tendría que seguir es cierto. Entonces vamos a actualizar constantemente su posición para que siempre vaya con nuestro ratón. Así como lo estamos arrastrando por ahí. Y si pasamos distancia, la distancia máxima que fijamos para nuestra distancia de arrastre siguiente se vuelve falsa y ya no podemos recogerla. Está bien, así que echemos un vistazo a eso. Vamos a entrar en nuestra escena. Por lo que de vuelta en 2D, haga clic en nuestra principal y instancia en nuestro sobre. Y pongámoslo justo sobre la mesa aquí. Y entonces tenemos un seleccionado no pasaría a la derecha y centraría y arrastraría distancia, voy a poner el mío en 100. Y podemos golpear el juego. Y ves nuestros cambios en el cursor del ratón. Y cuando hacemos clic en él, podemos arrastrarlo por ahí. Y como lo ven sin parar porque me toco ese límite de 100. Y si cambiamos eso a algo así como 300 sería capaz de ir, se podrá arrastrar tres veces y esa distancia. Por lo que depende de ti hasta dónde quieres hacer llegar tu distancia. Y como lo tenemos apagado por un lado, puedes cambiarlo sobre una base por objeto. Pero una vez que lleguemos a ese límite y ya no podemos arrastrarlo y ya no va a estar siguiendo a nuestro ratón. Ahora, voy a devolver la mía a un 100. Y son reales. Ahora tenemos un objeto arrastrable para nuestro juego. Entonces hay una cosa que necesitamos ajustar porque vamos a tener un pequeño bug. Si no te volvieras a poner eso en nuevo orden, debería serlo. Entonces si creamos otro objeto aquí, Veamos otro nodo en nuestro sprite, nuestra zona, nuestra forma de colisión. Vamos a llamar a esto nuestro sótano p. Acuérdate de no poner ningún espacio ahí dentro. No queremos tener un problema. Y solo podemos traer nuestra llave a nuestra textura. Forma de colisión central. Y sabemos guardar nuestra escena Clave Sótano. ¿ Y dónde está nuestro guión aquí? Traeremos nuestro script de objetos en. Entonces en nuestra escena principal, si seguimos adelante y traemos una llave, ¿dónde está nuestra llave? ¿ Qué pasó ahí? Ahí vamos. Entonces si traemos nuestra llave y la ponemos detrás de nuestro sobre porque quisiéramos que el sobre lo estuviera escondiendo ¿verdad? La clave es probablemente un poco demasiado grande. Por lo que sólo voy a volver a hacerlo y redimensionarlo. Cambiar el tamaño de mi báscula. Pagar a la mitad. Entonces notarás algo. Ahora cuando estamos aquí y hacemos click en nuestro sobre, nuestro qi realmente se recoge. Entonces esto es un poco un problema. Porque obviamente no queremos que eso suceda cuando queremos que nuestro jugador solo quite el sobre. Por lo que necesitamos tener en cuenta eso también. Entonces dentro de nuestro script de objeto, aquí vamos, podemos crear otra variable que se llama clickable, y pondremos eso en falso por defecto. Y Rusia y entrar en nuestra función de proceso aquí. Y vamos a hacer un cheque. Entonces vamos a decir si no zona 2D punto obtener áreas superpuestas. Entonces esto básicamente va a comprobar si no tenemos dos objetos que se superponen. Entonces si no tenemos un objeto encima de otro, entonces estableceremos true clickable. Por lo que vamos a establecerlo falso por defecto. Y si los objetos no se superponen, para que sea cierto, de lo contrario, estaremos de vuelta en nuestro defecto aquí falso. Y ahora todo lo que tenemos que hacer es simplemente bajar a nuestra entrada no manejada donde estamos revisando el clic izquierdo y centrado en los hombres y simplemente vamos a seguir adelante y sumar también. Y clickable igual a verdadero, ¿verdad? Eso es todo lo que tenemos que hacer. Ahora en realidad podemos entrar y mover nuestro sobre. Y ahí tendríamos nuestra llave lista para ser obtenida. Entonces si solo seguimos adelante y comprobamos eso, creo que tengo eso aquí dentro. Y sólo abriremos mi directorio muy rápido, borraremos mis datos. Conjunto. El plateado lo podrá ver. Puedo arrastrar esto y no afecta nuestra clave. De nuevo, lo haré justo en medio. Puedo hacer clic en mi sobre y moverlo sin tocar mi llave. Y ahora no se están solapando. Puedo hacer clic en la tecla. De acuerdo, así que ahora para hacerlo por este video, ya sabes cómo crear un objeto arrastrable. Y sabes cómo evitar que ocurra un, un glitch donde puedes recoger un objeto que está detrás de él. Por lo que siempre que quieras crear un objeto indirecto, ahora solo puedes usar este script y ajustar la distancia donde lo necesites. 12. Información del usuario: Muy bien, todo el mundo. Entonces pensé que nos tomaríamos un poco más de un día de calma aquí, no hacer demasiado. Y este video. Pero lo que vamos a hacer, y si vas adelante y cargas retórica, vamos a tener para que cuando seleccionemos un objeto, en realidad sólo podamos seleccionar nuestra clave. El motivo por el que vamos a hacer esto es para que cuando alguien esté jugando nuestro juego, no vamos a tener confusión, ¿verdad? Porque si podemos seleccionar un objeto, el jugador podría asumir, oh, puedo usar este objeto para algo. Y no queremos darles ese falso, supongo esa falsa intención, ese proceso de pensamiento falso completo. Por lo que sólo vamos a permitir que seleccionen nuestras teclas, porque obviamente las teclas son para abrir algo, la cámara o soportar lo que sea. Nosotros sólo queremos que sean capaces de tener ese derecho. Recogido a medida que avanzamos. Entonces para hacer esto bien, tú y hacer esto dentro de nuestro guión principal aquí. Y sólo vamos a necesitar conectar nuestra configuración aquí. Tenemos quitando objetos para su lugar. No creo que tengamos nada para esto. Sí. Creando nuestras propias texturas. No, no tenemos una para conectar nuestras señales. De acuerdo, así que sigamos adelante y podemos crear una función. Y sólo lo llamaremos conecta señales llanas y simples al punto y nos dice en el futuro exactamente qué está pasando aquí. Entonces vamos a tomar nuestra lista de artículos, que nuestro inventario recuerda. Y nos vamos a conectar. Vamos a conectar el elemento seleccionado. Ahí está. Auto así a este guión. Y estamos solo, llamaremos a esta función en el elemento seleccionado. Ross se va a conectar de nuestra lista de artículos. Nada seleccionado. Voy a decir sobre nada seleccionado Método de barra. Y para estar seguros, siempre crearemos nuestras funciones antes de que nos olvidemos. Y lo mismo con nuestro próximo. Está bien. Entonces en nada seleccionado. Lo que eso significa es que cuando hacemos clic en un espacio vacío aquí fuera que no tiene nada. Diga, ver en este momento no pasa nada. Nuestra estancia desnuda todavía seleccionada especie de nuestra cámara y nuestra llave del sótano. Entonces lo que queremos pasar es no tener nada seleccionado. Por lo que la forma más fácil de hacerlo es simplemente ir a nuestra, nuestra lista de artículos y simplemente llamar a Seleccionar todo. Y por supuesto estableceremos nuestro ítem seleccionado. En realidad aún no tenemos una variable para eso. Por el momento, elemento seleccionado. Simplemente deja eso como una cadena abierta o como una cadena vacía más bien. Y estableceremos el elemento seleccionado para que sea solo una cadena vacía, igual que está en nuestra variable en las cosas en la parte superior. Muy bien, entonces cuando seleccionamos un artículo, en realidad vamos a configurar nuestro ítem seleccionado para que sea ese ítem. También. Antes de ello, olvídate de la función en el ítem seleccionado para esta señal, en realidad tenemos un argumento que entra, ese es solo nuestro índice. Entonces solo pondré idx y ahí puedes llamarlo como quieras. Por lo que los elementos seleccionados son iguales a elemento, punto de lista obtener los elementos seleccionados. Entonces como solo podemos tener un ítem seleccionado, solo se va a conseguir el único ítem. Ah, mi error. son nosotros no queremos conseguir nuestro artículo seleccionado. Queremos obtener el artículo como texto. Eso es lo que queremos hacer. Por lo que obtenemos el texto pormenorizado y pasamos en el índice para que lo sepa. Y si quieres que sigas adelante e imprimas elemento seleccionado aquí si quieres asegurarte. Pero vamos a hacer si no clave, para recordar, clave va a estar entre un par de citas y no. Se puede escribir la palabra nada o simplemente tirar de ella el signo de exclamación. Entonces si no elemento clave seleccionado. Entonces si la palabra clave no forma parte de nuestro ítem, entonces solo estamos deseleccionando, deseleccionando todo. Y ahora verás que si tenemos nuestro desnudo seleccionado, por ejemplo, y damos click en el exterior, no pasa nada ahora ¿por qué es eso? A nuestras funciones no se están recortando. Así es, Mi error. Tengo que ir a la función lista. En realidad no estamos conectando nuestras señales. Por lo que llamaremos a nuestra función conecta señales. Ahí vamos. Por eso no está funcionando. Siempre asegúrate de que tus cosas realmente estén funcionando. El ahora lo verás aquí cuando intentemos dar click en un ítem, si la clave no está en el nombre. Por lo que vamos a conseguir el nombre en este caso se va a conseguir oso al hacer click en él. Y la clave no está en el nombre del elemento, qué clave no está ahí, entonces vamos a desseleccionar de inmediato. Por lo que parece que no está siendo seleccionado en absoluto. Lo mismo con nuestra vista de cámara. Si seleccionamos nuestra clave, la clave está en el nombre. Entonces no vamos a hacerlo, no vamos a anular la selección. ¿ Todo bien? Por lo que hacemos clic en él y lo seleccionaría. Y si hacemos click en el área vacía aquí, nuestra función on nothing seleccionada, bien gatillo y podemos anular la selección son clave. Ahí vamos. Entonces ahora podemos, ahora tenemos un poco de escritorio extra agradable agregado para nuestro usuario aquí. De esa manera, saben que si pueden seleccionar algo, probablemente tengan que usar eso en algún lugar en algún momento. Está bien. Eso es todo. Eso es todo lo que quería mostrarles chicos para este video. Y el siguiente. No, seguro lo que vamos a cubrir. No estoy seguro con qué vamos a empezar. 13. Mapa: Muy bien, todos en este video, vamos a seguir adelante y crear nuestro mapa. Solo vamos a tener nuestras dos ubicaciones, pero te mostrará cómo puedes crear un mapa que luego podrás usar para cambiar entre diferentes ubicaciones o diferentes habitaciones. Si tal vez tu juego se lleva a cabo en justo dentro de un edificio, tendrías diferentes áreas configuradas para diferentes habitaciones. O en este caso, vamos a estar pasando de este picnic a explícito en esta calle de aquí. Entonces sigamos adelante y eliminemos eso por aquí. Y ya vamos. Entonces para esto, vamos a seguir adelante y crear una nueva escena. Vamos a usar otro nodo. Y para esto, vamos a usar una capa de lona ya que esta salsa nos va a ayudar a mantenernos en la cima. Esto nos va a ayudar a mantenernos al tanto de todo lo que está pasando. Y seguiremos adelante y traeremos nuestro mapa, BG, por así decirlo, nuestro fondo de mapa. Y voy a seguir adelante y guardar eso. Vamos a llamar a este mapa y por supuesto para las escenas centrales. Está bien, así que solo para darte un ejemplo, si tuviéramos que traer aquí nuestro mapa, puedes ver nuestro mapa está encima de todo, lo cual es genial. Pero si lo movemos hacia arriba en nuestra lista de árboles, todavía va a estar encima de todo. Entonces este es el beneficio de usar una capa de lienzo y por qué usarías una capa de lienzo para algunos como UI. Entonces si tuviste un juego con salud, pondrás tu salud en la capa de lona. Por lo que toda tu IU estaría ahí dentro. Si acreditas un menú de pausa, probablemente habrías engendrado eso en o instancia eso en una capa de lienzo. Pondremos eso dentro de una capa de lona para traerlo más tarde. Pero eso es demandado. Te damos una idea de por qué usamos capa de lienzo o por qué vamos a usar una capa de lienzo para esto. De esa manera en caso de que alguna vez pase algo por alguna razón y las cosas se desordenen. Siempre somos capaces de ver nuestro mapa cuando lo traemos. Entonces seguiremos adelante y solo eliminaremos eso por ahora. Vuelve a nuestra escena del mapa. Y vamos a necesitar nuestro picnic y nuestra calle. Ahora ya ves los he nombrado mapa y todo lo que hice fue sólo añadir una transparencia y una, Wow, veo justo en un círculo, radio. Ahora, siempre puedo entrar y puedo cambiar esto, hacerlo más pequeño o más grande dependiendo de lo que estemos haciendo con nuestros mapas para esto. Y va a seguir adelante y correr esto y tratar de hacer que esto no sea del mismo tamaño, un poco más grande. Entonces sólo escribiré un poco más. De acuerdo, para que podamos hacer algo así, ¿verdad? A lo mejor vamos de ahí y luego vamos bajando aquí. Ahora, obviamente, si tienes un mapa como este, probablemente puedas tener un poco más de detalles en el mapa real o hacer que estos se vean un poco diferentes. Tener más arriba, obviamente más que solo dos localizaciones aquí. Pero vamos a usar tesis como ejemplo. Y con cada uno de estos, vamos a seguir adelante y sumar en un área en una colisión cuando era niño y una forma de colisión. Y claro que vamos a hacer de eso un círculo. Y solo haremos que eso cubra nuestras áreas así. Entonces de nuevo, con nuestro mapa, tenemos área a D y luego nuestra capa de colisión o forma de colisión. ¿ Cuál sería un círculo? Sácalo, alinéalo, asegúrate de que sea bonito. Bits cubre todo lo que necesitas. Muy bien, así que ahora tenemos nuestras dos áreas en las que pudieron dar click. Ahora, un tema aquí es que necesitamos poder detectar un mouseclick, que no es algo que realmente podamos detectar fácilmente, diría solo con un clic de ratón. Entonces en realidad tengo que hacer un poco de scripting para esto. Entonces eso es fácil, eso está bien. En realidad podemos agregar solo un script a nuestra capa de lienzo. Y obviamente queremos poner esto en los asistentes de selección correctos y en nuestra carpeta de guiones. Y llamaremos ya enojado a este mapa. De acuerdo, entonces con nuestra configuración de área, vamos a seguir adelante y conectarnos a señales de VSM. Entonces uno para nuestro picnic o dos para un picnic a la silvicultura y tengo que para cualquier otra habitación que quieras tener conectada a esto. Entonces vamos a seguir adelante y enganchar a un varón centrado. Y voy a seguir adelante y seleccionar o establecer esto. Ya que ésta es para mi calle, lo haría en calle, zona ingresada. Y haremos lo mismo con una salida. Entonces, ¿qué hacer en zona de calle salió? Y hacemos algo similar en nuestro picnic oops. Entró área de picnic. Y en zona de picnic salió. Muy bien, entonces tenemos nuestra función cuatro configurada aquí. Y vamos a hacer algo muy similar porque vamos a configurar una variable en la parte superior de nuestro script para el mouse enter, que será falso por defecto. Y en nuestra salida, vamos a poner esto en falso al igual que así. Y en el entrado, vamos a cambiar esto a cierto ya. Por lo que ahora tenemos nuestra elección y set ban false set. Entonces vamos a seguir adelante y crear otra variable. Y llamaremos a este destino. Vayamos a eso. Y por defecto será una cadena vacía. Ahora cuando entremos a la zona por nuestra calle, vamos a fijar destino igual. O calle, ¿verdad? Y luego cuando salga, simplemente lo volveremos a poner vacío. Y podríamos hacer lo mismo donde picnic. Aquí vamos. Así que pon esto a picnic. Impresionante. Es función lista, no la vamos a necesitar. Y podemos hacer una entrada no manejada. ¿ Y qué haces si el ratón entra esta verdad? Y punto de entrada es acción simplemente presionada o clic izquierdo. Entonces otra vez, al igual que con nuestros objetos, si nuestro ratón está dentro de la zona y le hacemos click izquierdo. Vamos a hacer esto. ¿ Y qué va a ser esto? Esto va a estar cambiando nuestra escena. Entonces vamos a hacer aún escena de cambio de punto de árbol. Y para estos en el extranjero o en un solo lugar. Pero lo que vamos a hacer, así que vamos a ir así. Vamos a hacer RES. Entonces nuestras matrices aquí, slash slash de colon. Y vamos a poner nuestras escenas carpeta slash. Y luego vamos a poner por ciento S libros que no funcionaron por ciento con un pequeño S dot T SCN. Y luego fuera de nuestros paréntesis, vamos a hacer por ciento de lado y pasar en nuestro destino. Ahora esto requiere que cambiemos realmente el nombre de nuestra escena porque ahora mismo conseguimos nuestra escena como solo ser llamada principal. En realidad necesitamos cambiar eso. Tan visto, haga clic derecho en nuestra escena principal y donde se renombra el Río. Y vamos a renombrar esto a picnic. Ahí vamos. Y como hicimos eso, no necesitamos cambiar nada más. Todo se ha actualizado hermoso. Ahora cuando hacemos click en nuestra calle, esto debería entonces cambiar nuestra escena a calle porque nuestro destino va a ser calle. Entonces, cuando hacemos esta escena, necesitamos asegurarnos de que se llame calle y volver a revisar tu ortografía porque quieres asegurarte de que la ortografía es correcta y tu capitalización va a ser correcta. Entonces sigamos adelante y al menos rápidamente hagamos nuestra escena aquí. Entonces solo llamaremos a la calle. Se puede guardar esto dentro de nuestras escenas como calle. Eso está bien. Y vamos a traer nuestra imagen y vamos a alejarnos. Ahora puedes posicionar esto y cambiar el tamaño de esto a lo que quieras para tu juego. Simplemente voy a dejar mi talla por defecto y simplemente dejarlo así. Toca mi escena actual, solo hazte una idea de cómo se ve. Sí, creo que eso está bien para esto. Podría gustarnos ponernos un poco más pequeños como bien. Todo se reduce a tu preferencia personal en este caso. Muy bien, así que tenemos nuestro mapa y vamos a correr esta escena actual sólo para ver nuestro asegurarnos de que las cosas funcionen. Entonces vamos a dar click en nuestro picnic y hemos cargado nuestro picnic. ¿Todo bien? Y si volvemos a abrir eso, si hacemos click en nuestra calle, deberíamos llevarnos a nuestra calle. Muy bien, así que el mapa está funcionando maravillosamente. Yo diría. Y ahora podemos seguir adelante y por la calle, obviamente necesitamos poner en nuestro inventario y mover ese tipo de cosas por todas partes también. Pero eso será, debería ser bastante fácil ya que tenemos nuestros guiones bastante configurados para simplemente pasar a cada nivel para cada área. 14. Uso del mapa: Muy bien, todo el mundo. En este video vamos a seguir adelante y crear o utilizar esto y aprovechar la oportunidad para montar nuestra calle senior. Entonces vamos a meter nuestro inventario aquí. Y luego vamos a seguir adelante y configurar nuestro mapa para que podamos tener un botón mapeado a él para que podamos sacarlo y poder realmente cambiar entre nuestras escenas. Lo más fácil de hacer es conseguir nuestro inventario estará aquí. Porque ahora que estamos en Gato 3.3 o más tarde en realidad puedes venir por encima de escena de picnic, hacer clic derecho o lista de ítems, copiarlo, volver a nuestra calle y pegarlo. Y ahora tenemos esa n. Si seguimos adelante y tocamos esa escena, deberíamos ver nuestro inventario ahora que cargado aquí también. Por lo que quien por ahora voy a ver que la OTP puede hacer click es nuestra clave todavía. De acuerdo, así que pongamos en marcha nuestro mapa. Pasemos a nuestro mapa de entrada de ajustes del proyecto, y sigamos adelante y establezcamos una clave para la acción del mapa. Si no tienes uno, por supuesto sube a acción de la criatura superior para el mapa, asígnale una clave. Yo sólo voy a usar m para mapa. Es más fácil de recordar y es bastante común. Vamos a dirigirnos a nuestro guión global y en realidad vamos a cargar en nuestro mapa que, bueno, sólo lo cargamos en una sola vez en nuestro juego, pero no tenemos que cargarlo varias veces. Entonces var, llamaremos a este mapa igual y acabaremos de precargar en traer nuestro mapa visto. Ahí vamos. Al igual que eso. Entonces podemos dirigirnos a nuestro guión principal, crear una variable para la visualización del mapa. Por lo que a falso por defecto. Y vamos a bajar y crear lo que queremos crearlo. Ahora, seguiré adelante y crearé mi abajo aquí en la parte inferior, crearemos una entrada no manejada. Por lo que ahora podemos comprobar si el punto de entrada es acción. Acaba de presionar nuestro botón de Matemáticas. Entonces para mí, para m, Así que cada vez que presione M en mi teclado, vamos a hacer esto. Y borrar la necesidad de comprobar si la visualización del mapa es igual a falso. Entonces si no estamos mostrando nuestro mapa y vamos a establecer la visualización del mapa en verdadero. Y vamos a instancia en nuestros mapas. Por lo que haremos var int mapa. Y eso será igual a mapa global porque queremos acceder a ese mapa que estaban freeloading instancia de punto. Y entonces, por supuesto, una vez que ha sido instancia, en realidad necesitamos agregarla de niño. Por lo que necesitamos realmente ponerlo en nuestra escena en el mapa. Está bien, Ahora y si nuestro mapa ya se muestra, ¿verdad? Tenemos que poder retirarlo. Si tocamos nuestra escena ahora. Podemos sacarlo, pero no podemos deshacernos de él. Lo que significa que una vez que está arriba, tenemos que viajar a alguna parte. Y tal vez no siempre sea así. A lo mejor pulsa el botón por accidente o solo quieres echar un vistazo a los lugares que tienes. Entonces, sigamos adelante y hagamos una declaración de otra cosa aquí. Por lo que obviamente sólo tenemos verdadero o falso para nuestra visualización de mapa. Entonces si nuestra visualización del mapa es falsa, lo haremos. De lo contrario, debe ser cierto. Entonces vamos a bajar aquí. Nos tratan con set map display igual a false. Y vamos a seguir adelante y vamos a meter a todos los niños en nuestra escena. Y vamos a echarle un vistazo a través de él. Y si vemos nuestro mapa ahí dentro, entonces nos vamos a deshacer de él igual que lo estamos haciendo con nuestros objetos cuando nos deshacemos de ellos. Está bien, así que al igual que lo hacemos aquí arriba para quitar artículo de la escena, básicamente vamos a hacer conseguir a nuestros hijos, ¿verdad? Entonces vamos a hacer por niño en autof.edad. Oops, punto-punto-punto aún niños. Si nombre de punto hijo es igual a mapa. Ahora, ten en cuenta que sí cambié mi capa de lienzo a ser nombrado mapa. Entonces si quieres usar aquí el mapa de palabras, asegúrate de tener ese conjunto. De lo contrario, no va a funcionar. Entonces si ese conjunto, entonces sólo los vamos a quitar, conseguir nodo. Y podríamos simplemente hacer nombre de punto infantil, punto Q libre. ¿ Verdad? Ahora que hacemos correr nuestro juego o en nuestro picnic, podemos darle a nuestro mapa la clave aparece. Podemos viajar a nuestra nueva ubicación. Pero también golpeamos a nuestro MK, surge nuestro mapa, lo presionamos de nuevo y desaparece. Por lo que puedo sacarlo y hacerla desaparecer en cualquier momento. Y podemos viajar a todas las ubicaciones que nos gusten o a todas las ubicaciones que ya tenemos configuradas. Por lo que no tenemos esa configuración y somos fácil, fácilmente capaces de movernos de ida y vuelta. Nuestro inventario se queda con nosotros. Entonces supongo que a continuación, pero vamos a abordar es vamos a echar un vistazo a usar, están usando nuestra clave aquí. Y usaremos eso para realmente deshacernos o desbloquear nuestra puerta aquí. Y entonces por supuesto, si quisieras usar esto para meterte en un área nueva, incluso obviamente, vas adelante y haces eso también. 15. Cerraduras: Ups, solo movamos eso y bajamos al camino. Ahí vamos. Muy bien, entonces en este video vamos a ir y ver ahora cómo desbloquear una puerta usando las llaves que encontramos. Entonces el primer lugar al que debemos ir es parar en nuestro global porque ahora tenemos algunos datos nuevos que poner aquí. Entonces vamos a tener una ranura para puertas desbloqueadas. Ahí vamos. Esos serán nuestros tirantes rizados. Y dentro de eso tendremos de esta manera o guardaremos todas tus puertas durante horas. Lo vamos a llamar puerta del sótano. Y vamos a ponerlo en falso. Esto va a hacer un seguimiento de qué puertas en nuestro juego o desbloqueadas y cuáles no. Ahora obviamente estas no tienen que ser puertas. Esto podría ser el pecho o cualquier otra cosa que quiera quedarse aquí. Ahora siempre puedes tener múltiples cosas o ella puede tener puertas desbloqueadas aquí y entonces tal vez aquí abajo habremos desbloqueado cofre desbloqueado. Correcto. Entonces podrías hacer eso y luego hacer el mismo tipo de cosas pero tener pecho si quieres tenerlos todos separados. Pero para esto, sólo vamos a mantener las puertas abiertas. Y q aquí. Y creo que eso es todo lo que vamos a necesitar hacer por nuestros datos aquí. A ver. Sí, lo tenemos todo. Por lo que a continuación vamos de cabeza a vamos a a nuestra nueva escena porque necesitamos crear un candado ahora. Entonces vamos a tener una escena 2D. En realidad creo esto como un spray, así que en realidad voy a cerrar ese canto. Crea uno nuevo, solo tienes que golpear otro nodo. Y yo solo crearé un sprite. Voy a llamar a esto mi candado. Y por supuesto, vamos a tener un área 2D y una forma de colisión con ella. Entonces para mi candado, voy a entrar en mis texturas. ¿ Y dónde está mi cerradura aquí? Ahí vamos, cerradura del sótano. Voy a traer eso a mi textura. Y ahí voy. De acuerdo, entonces tenemos nuestra bonita cerradura aquí. Necesitamos nuestra forma de colisión para cubrirlo es un rectángulo. Significa que no encaja exactamente. Ahora puedes cubrir todo el asunto o simplemente podrías cubrir el área de LOC. Depende completamente de ti. Es tu juego. Haz lo que creas que es mejor. Yo mismo. Creo que voy a abrir los dos. Ahora cuando sólo tenemos que meternos en el área llamada la ranura, guárdala en mis escenas. Ahora por encima de mi calle, voy a traerlo y ponerlo todo. Yo sólo voy a poner mi cerradura justo en la puerta de aquí. A ver cómo se ve eso. Escena de jugador. De acuerdo, así que eso hace pasar la idea de que esta puerta está cerrada. Está bien. Perfecto. Ahora lo va a hacer. Entonces volvamos a nuestra escena de candado. En realidad podemos crear un guión ahora para un candado. Y pon esto en tu carpeta de scripts. Y crear. acuerdo, Ok, ¿Qué vamos a necesitar? Vamos a necesitar algunas variables aquí. Hagamos nuestro ratón ingresado, Por supuesto, que será falso por defecto. Y en realidad lo pediríamos prestado en un momento. Vamos a necesitar, vamos a exportar una variable llamada clave necesaria. Y digamos que le digan al motor que esto tiene que ser una cuerda. Vamos a exportar otra variable para puerta, que también será una cadena. Y otra, una vez más, sea una cuerda, llamaremos desbloqueo. Imagen. Ahora, podría cambiar esto más tarde de que soy como imagen a otra cosa, pero eso es lo que necesitamos ahí. Agrega nuestro texto ya. Ahora en nuestra lista, necesitamos conectar nuestras señales de área, que podemos tomar prestadas de objetos aquí. Y solo pega eso justo ahí dentro, así como las dos funciones para ello. Sí. Está bien. Ahora, eso es todo la configuración es la parte más fácil. No tenemos que hacer eso constantemente, ¿verdad? También vamos a necesitar una señal para esto. Entonces tendremos una señal llamada desbloqueada. ¿ Qué tenemos esto ya por aquí? No, no lo hacemos. Y no creo que utilicemos uno por aquí tampoco. No, no lo hacemos. Entonces vamos a tener bastantes secciones nuevas aquí. Entonces, empecemos por crear. Ahora no necesitamos hacer eso. Hagámoslo. Comience con nuestra entrada no manejada. Entrada de mano, no manejada. Y comprobaremos si la entrada es acción acaba de presionar, son click izquierdo y un mouse enter es verdadero. Entonces lo que haremos, deslice eso fuera del camino. Entonces lo que haremos es que podamos seguir adelante y comprobarlo. Entonces lo haremos si un elemento parent Seleccionado, que sí tenemos configurado aquí? Sí. Sí, señor. Elemento Seleccionado ahí. Enfriar. Está bien. Sólo asegurándome. Entonces ahí es donde los teníamos. Eso lo estamos obteniendo de nuestro guión principal. Entonces cuando agregamos en nuestro candado, como ven aquí, vamos a conseguir nuestra calle y vamos a estar revisando este guión, que es nuestro guión principal para ver qué elementos seleccionados es. Entonces si conseguir elemento paradata seleccionado es igual a la clave necesaria. Entonces si el artículo que hemos seleccionado, que sólo pueden ser nuestras llaves, si eso coincide con la llave que necesitamos para desbloquear esta puerta. Y global, global, no global. ¿ Qué hacemos en sus datos globales? Puertas desbloqueadas y solo asegúrate de que lo estoy deletreando correctamente. Utilizamos usamos mayúsculas aquí. Está bien. Siempre es bueno saberlo, asegúrate de hacerlo bien. De lo contrario te encontrarás con errores. Puertas desbloqueadas, puerta. Por lo que pasar por puerta aquí, que es el nombre que le va a dar, es igual a falso. Entonces usaremos una función que vamos a crear llamada desbloqueo. Paso bajo en la llave necesaria. Por lo que para deshacerse de este error ahora mismo es bajar. Y acabo de conseguir eso al revés. Y crearemos nuestra función de desbloqueo y pasaremos en un solo argumento. Lo llamaremos C0. Por ahora acabamos de pasar justo el camino. De esa forma nos deshacemos de todos nuestros errores. Entonces lo que estamos haciendo aquí es cada vez que hacemos click izquierdo dentro de nuestro Locke, vamos a comprobar si el ítem que hemos seleccionado justo aquí en nuestro guión principal, si eso es igual a la clave que necesitamos para desbloquear esta puerta. Y si nuestra puerta está puesta en falsa, que está aquí arriba en nuestro global y justo aquí. Entonces si nuestras puertas no se desbloquean, y el artículo seleccionado es la clave que necesitamos, entonces lo vamos a desbloquear. ¿ Y cómo vamos a desbloquear esto? De lo que vamos a utilizar esta función llamada desbloqueado. Las cabras nos dan un poco de espacio ahí. Se está poniendo bajo, demasiado abarrotado. ¿ Y cómo hicimos esto? Bueno, usamos si datos globales en una puerta y puertas cerradas. Mi error donde realmente estoy revisando el realmente estamos empezando alrededor de una. Entonces volvamos atrás. Borro la línea, consigue su corte eso de inmediato. Pero si fuera a emitir nuestra señal, sin marcar. Y pasaremos en el argumento de una clave. Y luego estableceremos nuestros datos globales. Desbloqueado. Puertas. Por supuesto que pasará una puerta. Y pondremos eso en realidad. Entonces lo que estamos haciendo cuando lo desbloqueamos, vamos a llamar a emitir una señal hasta nuestro guión principal. Y luego a partir de ahí, eso va a realizar opciones para deshacernos de la llave y de todo. Y yo tengo un título, ellos quieren datos y no directos. ¿ Está bien? Y luego vamos a poner nuestra puerta, la puerta que estamos desbloqueando. Vamos a ponerlo en realidad de esa manera sabemos que nuestras puertas ya han sido desbloqueadas. Entonces por supuesto podemos seguir adelante y podemos guardar nuestros datos, datos globales de guardado de puntos. Y eso es todo lo que tenemos que hacer ahí dentro para desbloquear esa puerta. Pero sí tenemos una función más que podemos hacer. Podríamos compartir. Sí. Así que comprueban desbloquear puerta. Y esto vamos a usar esto para comprobar si nuestras puertas ya han sido desbloqueadas. Y si es así, ¿qué hacer esto? Y si no, no haremos nada, ¿verdad? Entonces si simplemente agarramos estos datos globales en puertas de cerradura, desbloqueamos o desbloqueamos puertas, puerta es igual a verdad. Entonces si nuestras puertas ya han sido desbloqueadas, entonces lo que haremos es que en realidad podríamos simplemente tacar para ti mismo, ¿verdad? Porque no necesitamos nuestra cerradura ahí para ser exhibida. Podemos simplemente deshacernos de él o puertas ya abiertas. Ya. Y ahora sólo tenemos que manejar lo que sucede cuando se emite nuestra señal y conectar nuestra señal a nuestro script principal aquí. Entonces eso estará en nuestras señales conectadas aquí. Dos y agarra nuestro LOC dot connect. Y verás que nuestra señal debería aparecer aquí. Y si no, entonces podemos simplemente escribirlo. Simplemente lo llamamos yo desbloqueado. Y acabamos de llamar a esto una clave eliminada. O si nuestro Remove Key no se quita quita la clave. Ahora podemos crear esta función. Quitar clave. Entonces cuando pasamos esto, sí necesitamos argumento. Recuerda que estamos pasando en clave cuando admitimos nuestra señal. Ahora sabremos de qué clave deshacernos? Entonces eso es bueno. Var clave índice este derecho, sabemos qué elemento quitar. Y esta será nuestra lista de artículos. Dot get item, o lo siento, no get Adam consigue artículos seleccionados. Artículos seleccionados, que sólo puede ser un elemento que se seleccione con la forma en que se configura lo nuestro. Entonces esto le dará un reporte lento de nuevo un número que nos dice qué artículo hemos dormido bien, tenemos ítem 0, ítem uno, ítem dos, ítem tres, etcétera. Entonces nos va a dar ese número. Y luego lo haremos, adelante y deshacernos de ese elemento, lista punto eliminar elemento. Y pasaremos en ese índice clave. Y eso en realidad nos va a dar una matriz. Entonces diremos 0 porque siempre va a ser el primer ítem porque solo estamos tenemos un ítem se selecciona en cualquier momento. Y haremos datos globales. Y esto vamos a acceder a nuestros objetos recolectados. Borrar puntos, elemento seleccionado. Hay clave ya no se va a cobrar. No necesitamos eso en nuestro inventario para ser exhibido. Siempre que recarguemos nuestro juego de nuevo. Y entonces solo llamaremos a R sobre nada seleccionado para que podamos desseleccionar todo Eso debería funcionar. Ya están listos. Vamos a verlo. Vamos a seguir adelante y correr esto ahora. Ah, intento de llamar a conectar en instancia nula. Eso es porque nuestro picnic no tiene puesto. Entonces vayamos a nuestra calle y llevemos esa escena. Y deberíamos poder usar su llave del sótano y dar click en nuestra cerradura. No obstante, no va a pasar nada. Ahora bien, si estás poniendo atención ya que estamos pasando por eso, No montamos algunas de nuestras cosas. Exportamos algunas variables donde en realidad no las seleccionamos. Entonces como ven ahora en el lado derecho, si seleccionan candado, podemos ponerlo en la llave que necesitamos, que es nuestra llave de sótano. Podemos ponerlo en la puerta que básicamente somos puerta. Y recuerda que esa puerta tiene que coincidir con lo que has escrito aquí abajo. Y la imagen de desbloqueo, ¿verdad? En realidad ya no necesitamos eso con esto. Pero si tienes una imagen diferente, te mostraré cómo hacerlo también. Si tienes una imagen diferente que deseas mostrar. Entonces, si sigues adelante y ejecutas esto, podrías encontrarte con un error. Cuando lo estamos ejecutando o cuando tratamos de desbloquear tu puerta. Acerca de un diccionario, emisión, índice inválido. Adelante y solo borra tus datos antiguos. Y puedes seguir adelante y simplemente recordar tus objetos. Y deberías verlo. Tan solo apareces como estar bien ahora, cuando lo ejecutes. Ahora para el picnic, obviamente tenemos mucho aquí, pero no lo necesitamos. Entonces por ahora, solo voy a seguir adelante y podemos correr eso. Y puedes recoger tus artículos. Agarramos nuestra llave, vamos al siguiente mapa y nos vemos en clínica o llave, clic en nuestro candado y están encerrados. Mi caso ya estaba abierto desde las pruebas. Por lo que tendría que borrar eso, que haré aquí mismo. Así que hit play que se abre y borra mis datos. Y simplemente evitaremos que eso salga. Seguiremos adelante y volveremos a ejecutar eso. Ahora puedo recoger un oso, mi cámara, mover el sobre sombrío mi llave, ir a la nueva ubicación, seleccionar mi llave y bloquear. Ahí vamos. Y nuestras puertas están desbloqueadas, nuestra llave se ha ido. Ahora sí tenemos un tema. Entonces si volvemos a nuestro parque y movemos el sobre, son llave sigue ahí. Por lo que en realidad vamos a necesitar poner un código para quitar nuestra clave también. Ahora, bueno, no podemos volver constantemente a buscarlo y seguir agarrándolo a pesar de que nuestras puertas ya se desbloquearon. Pero antes de que hagamos eso, vengamos a nuestra cerradura aquí. Y veamos, lo desbloqueamos. Cuando hacemos eso, nos encontramos con nuestra señal que viene a nuestra principal para quitar la llave y que está conectada. Muy bien, entonces lo que haremos es en nuestra cerradura, cuando llamemos a nuestro desbloqueo aquí, justo después de que lo salvemos fueron en realidad ir adelante y self.age Q3. Y ahora siempre que lo desbloqueemos, la puerta va a estar bien, ya va a estar desbloqueada para nosotros. Y asegúrate de ejecutar tu cheque desbloqueo y están listos función. Y sólo para que podamos revisar después una vez que ya hayamos entrado, checar en lote puerta derecha, así que vamos a pasar eso. Y ahora si fuéramos a correr esta escena desde 30 en bloqueado, esa es nuestra suerte. Queremos la calle. Qué cheque aquí y se ha ido por completo porque ya ha sido desbloqueado. Y ahora si vuelves la llave de coleccionista y regresas, deberíamos poder desbloquearla y la llave o la cerradura desaparecerá para nosotros. Muy bien, entonces en el siguiente video echaremos un vistazo a quitar la llave para que no podamos recogerla constantemente de nuestra escena de picnic. Y echaremos un vistazo a no necesitar haber encerrado aquí en nuestra escena de picnic que vemos es que no tienen cerraduras, no van a tener errores en ellas. 16. Fijación de señales de bloqueo: Muy bien todos, vamos a echar un vistazo a sacar nuestras llaves de nuestra escena. A ver, tenemos remove key aquí estamos en nuestro guión principal. Pero quitar llave es para cuando desbloqueamos una puerta, lo que queremos hacer es quitar las llaves de la escena. Veamos por dónde estábamos moviendo nuestros objetos aquí mismo. Entonces sigamos adelante y entramos y sólo lo vamos a colar aquí dentro haría quitar llaves de la misma. Y por supuesto, no necesitamos un argumento para este. Porque simplemente seguiríamos adelante y verificábamos la puerta en datos globales sobre puertas cerradas. Ah, está bien. Ahí vamos. Entonces solo voy a revisar todas nuestras puertas. Detuvimos el pasado ahí dentro. ¿ Por qué no me deshice de eso? Está bien. Entonces vamos a echar un vistazo a todas estas puertas aquí y vamos a revisar para ver si hay falsos o si son ciertas. Entonces para todas nuestras puertas, si nuestra puerta por puerta es, es igual a verdad, entonces un debe ya estar desbloqueado. Y como nuestra puerta y llaves están listadas la misma puerta del sótano y obtenemos la llave del sótano, ¿verdad? Correcto. Y lo que vamos a hacer es crear una variable llamada clave. Clave será igual a Door dot replace. Es igual a dor dot replace. Y lo que esto nos permite hacer es realmente reemplazar un personaje por otro y el personaje que queremos reemplazarlo como espacio. Y lo reemplazaremos por sólo una cadena vacía, así. Entonces, así, así, eso nos va a quitar nuestra cuerda. Entonces en lugar de tenerlo, tenerlo así, lo que estamos haciendo es tomar ese espacio en medio. Estamos tomando ese espacio en el medio. Y lo vamos a hacer así ahora. ¿ Todo bien? Y luego en nuestra siguiente línea, en realidad vamos a hacer algo similar aquí. Y vamos a reemplazar la palabra puerta por la palabra clave. Está bien. Y ahora sólo podemos quitar elemento, quitar el elemento de nuestra escena, que es clave. Por lo que vamos a llamar quitar elemento de la escena y pasar en nuestra clave. Entonces vamos desde el sótano. Puerta a puerta del sótano. Y entonces estamos sustituyendo puerta. Y ese círculo soy de puerta del sótano a Llave del Sótano. Espero que eso tenga sentido y espero que eso ayude a entender lo que está pasando. Vamos de la tienda espacial del sótano esa puerta del sótano sin espacio. Y luego vamos de puerta del sótano sin espacio a llave del sótano sin espacio. Y entonces obviamente si echamos un vistazo a nuestra llave del sótano del año pasado sin espacio, eso es lo que se va a quitar de nuestra escena. Por lo que sólo tenemos que llamar a esta función y estamos listos. Quitar las claves de la escena. Y ahora por suerte, bueno, antes de hacer eso, sigamos adelante y probarnos, entramos en nuestro picnic y nos quitamos el sobre. Se va la anarquía. De acuerdo, así que eso está funcionando ahora para deshacerse del problema de conexión para nuestro candado. Está bien, entonces para eso podemos comprobar si la cerradura no está vista y si está conectada, ¿verdad? Por lo que para niño en self.edad conseguir niños revisarán si están encerrados. Entonces diremos en nombre de niño.tipo, ¿verdad? Entonces no vamos a conectar esto. Entonces si Locke está en niño.value haría eso. Y así en cualquier momento conectaremos eso. Entonces si ejecutamos esto, no tenemos errores. Si quitamos este candado de nuestra escena, deberíamos estar bien ahora. No, ya estamos bien. Y si vamos a nuestra calle o candado debe borrarse automáticamente. Y lo hace. Muy bien, entonces para una prueba final ahí, seguiré adelante y conseguiré mi directorio, borraré mis datos. Y podríamos probar esto igual que una nueva tasa de playthrough. A excepción de ese comentario que retrocede. Por lo que no abro ese derecho recogerá un oso. Haremos click en nuestra cámara y en el sobre. Haga clic en nuestra clave. Cambia a nuestro callejón. Pulsa nuestra llave del sótano, abre esto nuestra cerradura. Está bien, eso se ha ido. Cambiar de nuevo a nuestro picnic o la llave aún se ha ido. Vuelve a nuestra calle. El candado sigue desbloqueado y no estamos teniendo ningún error de conexión con nuestras señales. De acuerdo, así que ahora podemos desbloquear la puerta nos quejamos de principio a fin. Podemos pasar a nuestro mapa. Estamos quitando las llaves para puertas que ya hayan sido desbloqueadas. Solo estamos conectando nuestra señal de bloqueo si tenemos algo que está listo para ser desbloqueado en esa escena. Y nuestro inventario transfiriendo más. Y por supuesto está ahorrando por completo con todo lo que estamos haciendo. Y todos nuestros guiones se pueden agregar por completo a cualquier cosa. Entonces si vamos y echamos un vistazo, podemos agregar nuestro guión arrastrable a cualquier cosa que queramos agarrar y movernos, como nuestro sobre. Entonces si quieres esconder algo detrás de otro objeto, puedes hacerlo. Hemos impedido que el usuario recoja algo así como una llave detrás del sobre. De esa forma, en realidad tienes que mover el objeto antes de recogerlo. El usuario sólo puede seleccionar nuestras claves de esa manera sabe que las claves son útiles y todo lo demás no lo es. Tenemos una configuración de sistema de llave de bloqueo por lo que ahora puedes desbloquear cofre o puertas o algo por el estilo. Contamos con una configuración de mapa para que podamos ver el mapa y guardarlos así como utilizar ese mapa para viajar entre diferentes habitaciones o en nuestro caso, diferentes ubicaciones por completo. Y tenemos un script de objetos que podemos poner en cualquier objeto que queramos utilizar como coleccionable para nuestro juego. Por lo que tenemos muchas características diferentes implementadas aquí, así como muchos de nuestros scripts siendo capaces de simplemente ser sobreutilizados para darle una bofetada a otro objeto, darle una bofetada a otro candado. Nuestro guión principal para darle una bofetada a otra escena. Está bien, aquí tenemos muchas cosas pasando, y si lo has hecho tan lejos, adelante y date una palmadita en la espalda. Has hecho mucho y espero que hayas aprendido mucho mientras haces esto. 17. Opciones alternativas: Está bien. Obviamente, no puedo dejarlos fuera. Yo sí dije que te iba a hacer saber si querías usar la imagen de desbloqueo. Entonces cuando desbloqueaste la puerta aquí, si querías mostrar una imagen diferente, quizá quieras hacer esto, tal vez con un cofre o algo así. Por lo que tienes como un cofre cerrado o un cofre desbloqueado o lo siento, mucho pecho. No te quiero momento de mala suerte y mostrar imagen diferente. O en este caso, tal vez solo en lugar de mostrar un candado, como no tenemos aquí, tal vez tengas otra imagen. Estamos claramente muestra que ha sido desbloqueado. A lo mejor quieres hacer algo así. Definitivamente puedes hacer eso y te mostraré cómo hacerlo. Dentro de nuestro guión, tenemos el desbloqueo inmaduro. Entonces todo lo que harías es simplemente agarrar cualquier imagen que quieras. Aquí no tengo uno a la mano. Por lo que solo usaré mi llave de sótano para este ejemplo. Y solo tienes que hacer clic derecho Copiar ruta y pegar eso en tu imagen de desbloqueo. Y luego dentro del guión cuando se necesita crear una nueva función llamada crear texturizado. Esto tomará una discusión, sólo un argumento. Llamaremos a LBJ. Y diremos var I igual a imagen, IMG carga de puntos. Y lo que vamos a cargar aquí es que solo puedes pasar en el OBJ completo si quieres, si copiaste todo tu camino. A continuación, tendremos textos que se ven en la parte superior derecha. Ahora textos variables, ahí va a entrar en juego esto. Igual a imagen, textura. Nuevos textos de imagen o IMG. Entonces lo que estamos haciendo es que Michelle tomó nuestra imagen aquí y estamos creando una textura para ella. Y vamos a ver, dónde está desbloquear. Entonces en lugar de usar Q gratis, lo que luego harías es llamar a crear textura, y pasarás en tu imagen de desbloqueo. Al igual que así. Entonces si solo entro en mi principal y elimino esto, esto va a aparecer. Puedo borrar mis datos. Boom. Apague eso. Entonces ahora si fuéramos a jugar a través de nuestro juego, vamos a hacer clic, boom, boom, agarrar eso. Acude a nuestra habitación contigua, que tenemos cerradura. Ahora en lugar de cambiarlo, en realidad no asignamos nuestra textura. Ese fue mi error. Entonces. Nosotros lo creamos. Aquí está nuestro candado, lo creó y no lo asignamos. Y así self.age, textura, textos. Entonces eso es lo que haríamos. Y voy a necesitar volver a borrar mis datos por caridad lo hizo. Que los libros harán eso. Ahí vamos. Entonces ahora que lo reproducimos, recolectamos, coleccionamos , movemos las escenas clave del trimer sobre. Ahora cuando lo desbloqueamos, vemos cambiar nuestra textura. Entonces obviamente solo estoy usando una llave aquí, pero solo estás cambiando eso a lo que quieras que sea tu imagen de desbloqueo. Por lo que realmente puedes usar imágenes de desbloqueo así. O simplemente no puedes usarlo en solo Q gratis. De cualquier manera ahí, eso depende completamente de ti. Soy flaco si Q libre porque no la tengo desbloquear imagen. Y si quisieras, incluso podrías usarlos a ambos al mismo tiempo. Entonces lo haces si desbloquear imagen es igual, correcto, si no es nada, es una cadena vacía. Entonces podemos hacer nuestro auto punto Q libre. Y si no, entonces ahí es donde podemos pasar en nuestras secciones aquí. Entonces si quisieras usar ambos, Esa es otra forma en la que puedes hacerlo de esa manera. Yo solo puedes usar desbloquear imagen en cerraduras que quieras. T es la imagen de la derecha. Ahora de igual manera, también podríamos usar crear textura ahí para crear tu imagen. O si quieres usar diferentes cerraduras, entonces hazlo solo para explorar, escribir bloqueo var, y simplemente pasar, pasar eso como una cadena. Y ahora hacemos clic en él, solo puedes traer tu cerradura, como el resorte en la cerradura del sótano. Siempre hago clic y lo arrastra. Pero si quieres, puedes simplemente traerlo así, así como así. Y luego en ya estás lista función. Puedes crear textura a partir de nuestro candado. Si yo fuera a deshacerme de él desde aquí. Y hacer autopunto Etiquetas de textura. Entonces, si todos lo hacen un poco más personalizable aún más adelante, simplemente pueden hacer algo como eso y simplemente pueden pasarlo. Lo mismo. Cuando estábamos abriendo esto, va a verse exactamente igual. No deberías tener ningún problema. Por supuesto, mis datos se meten de nuevo en el camino porque ya tenemos las cosas desbloqueadas. Debería ser la última vez que hacemos eso sin embargo. Pero puedes ver ahora tenemos visualmente el mismo ícono exacto, exactamente lo mismo aquí. Entonces eso depende completamente de ti. qué ruta quieres ir, si quieres usar tu qué quieres usar la imagen de desbloqueo o Q3 o una combinación de usar ambos. Y luego otra vez con tu log, si quieres usar un, un argumento ahí para tu textura. Como ves cuando lo tiramos, podemos cambiar la textura aquí cuando jalas se noten. Por lo que no es del todo necesario. Pero si quieres hacerlo a través del código, podrías hacerlo de esa manera. Nuevamente, completamente a ti y cómo quieres ir a hacer eso. Sólo un poco, un poco más de opciones para que pases y decidas cómo quieres seguir haciendo eso. Personalmente. Sólo traeré eso. No tengo Maya reciente que no lo haga de esa manera. Por lo que sólo puedo quitar a los dos yo mismo, así como nuestra cerradura ahí. Está bien. Entonces eso lo hará por el, por todas tus opciones aquí. Si no sabes reproducir audio, entonces haré un video rápido en el siguiente te está mostrando cómo reproducir audio que le asignaste para tu desbloqueo y cosas por el estilo. Si querías hacer eso o si querías tocar algo de música de fondo mientras sois reproductores simplemente mirando a tu alrededor. 18. Cómo añadir audio: Muy bien, bienvenidos a todos. Y en este video vamos a, les voy a mostrar cómo jugar un poco de audio para el juego. No tengo ningún audio a la mano para este proyecto. Pero si tienes alguno, entonces probablemente seguirás adelante y tendrás otro año de carpeta. Crea uno llamado audio y sigue adelante y solo tienes que mantener todos tus archivos ahí. Al ser 3.3, puedes traer un archivo MP3 si quieres. Pero ¿vas a hacer, por ejemplo, aquí en nuestra primera o en nuestra escena aquí? Si quieres que el audio se reproduzca todo el tiempo, entonces solo podemos seguir adelante y añadir un reproductor de streaming de audio. No hace falta D porque no estamos haciendo, no necesitamos nada direccional como algo fuera de pantalla o nada. Por lo que sólo podemos hacer un reproductor de streaming de audio. Puedes nombrarlo como quieras y agarrar tu archivo de audio. Simplemente lo arrastro hacia el flujo y aseguro de probarlo y ajustar tu volumen dB aquí. A veces las cosas son mucho más ruidosas de lo que puedes pensar que es. Y todo lo que quieres hacer si quieres que esto toque, es como una música de fondo. Simplemente puedes configurarlo para la reproducción automática y luego empezará a reproducirse tan pronto como tu cosa se cargue. Esa es una forma en la que puedes hacer eso. Y si quieres hacer esto en forma de un sonido de desbloqueo o algo así, entonces podemos hacer eso dentro de ti podrías hacer eso dentro de la cerradura misma, ¿verdad? Puedes crear una capa de camarón de audio y arrastrar en tu sonido de desbloqueo, un gesto para que tu audio, tu volumen decibeles el DB. Y luego cuando estamos causando desbloqueo aquí. Entonces cuando desbloqueamos justo después de guardar datos aquí, podemos entrar aquí y conseguir tu capa de camarones de audio, sea que la llames, a decir punto, jugar, esto así. Y no necesitamos pasar nada por esto, y reproducirá nuestro sonido de desbloqueo. Entonces o bien Scott coge tu audio y lo pones ahí dentro de la sección de corriente aquí arriba. En este caso para nuestro audio de desbloqueo. O por aquí en nuestro picnic. Nuevamente, audio cono, capa de camarones de audio. Agarra tu música de fondo que quieras tocar para esta área y arrastrada a la sección de stream. Y luego solo habilita el juego automático. Y recuerda configurar tus decibelios de volumen para asegurarte de que no sea demasiado fuerte en los años del jugador. Entonces así es como configurarías el uso de audio para eso. Es muy sencillo. De nuevo, no tengo ningún audio para esto, pero solo agarra tu audio, arrástralo, suéltalo. Golpeé Adelante a la reproducción automática. Por lo que por favor excusa de arranques de cuerda. Y luego encima en la cerradura, vuelve a crear un reproductor de streaming de audio. Agarra tu sonido de desbloqueo, suéltalo, ajusta tus decibelios de volumen y tu script de bloqueo. Cuando llames a desbloqueo, sigue adelante y solo toca el audio. Entonces si tienes audio para tu juego, solo te adelantaste y muévete eso accidentalmente. Pero si tienes audio para tu juego, ya sea música de fondo para jugar constantemente o si es una zona de mala suerte, así lo harías. Simplemente voy a seguir adelante y eliminar esto ya que no tengo ninguno solo para eliminar cualquier potencial para cualquier posible problema. Hola. No es lo que quería venir aquí, borrar eso, y guardarlo todo. De acuerdo, así que ahí tienes. Tenemos un guiones reutilizables. Se puede saltar entre áreas. Ahí está mi experimento de texturas en. Está bien. Entonces tenemos mapas, podemos saltar entre áreas. Tienes objetos coleccionables. Simplemente puedes poner ese script en cualquier objeto que quieras ser coleccionable. Tenemos objetos arrastrables otra vez. Y las cosas que quieres arrastrar, puedes seguir adelante y simplemente poner tu guión arrastrable en él. Tenemos llaves para que podamos cobrar. Y eso está emparejado con nuestras cerraduras. Para que podamos pasar por un sistema de llave y desbloqueo. Tenemos nuestro mapeado para trasladar entre diferentes áreas. Quitamos de nuestra escena cualquier objeto así como cualquier llave que ya haya sido recolectada, y cualquier llave que ya haya sido utilizada para desbloquear puertas. Y estamos guardando y cargando nuestros datos. Muy bien, Así que hemos hecho mucho a este curso, y espero que hayan aprendido mucho. Pero ahí está tu núcleo básico para crearte un juego tipo objeto oculto.