Puertas con llave en UNITY | TUTORIAL RESUMIDO

Поделиться
HTML-код
  • Опубликовано: 6 сен 2024

Комментарии • 32

  • @ecothedog
    @ecothedog Год назад +1

    que gustazo de video. CALIDAD Y GRAN CONTENIDO^^ Y lo del final que es??? spoiler de futuro video oculto jejejeje.

  • @UltimateNexder
    @UltimateNexder Год назад +2

    Ahora se algunas cosas para mi juego

  • @julianosquimax
    @julianosquimax 2 месяца назад +1

    bro muy buen tutorial pero, sabes si de alguna manera puedo hacer eso mismo pero recogiendo no 1 sino 5 o mas llaves?

    • @kickcreator_dev
      @kickcreator_dev  2 месяца назад

      Claro, solo tendrias que tener una variable que cuando llegue a cinco, te active la puerta. Haciendo que cada llave le sume un punto a la variable

  • @villanuevalariospaolatahis9767
    @villanuevalariospaolatahis9767 9 месяцев назад +1

    Hola disculpa le puse tal cual códigos, animaciones pero no deja de abrir y cerrar la puerta y ni siquiera había tomado la llave, no sé si es porque no coloque bien las animaciones o como editar el animation controller porque esta como Entry- Closed Door- Open Door y exit, no sé si puedas ayudarme, muchas gracias igual

    • @kickcreator_dev
      @kickcreator_dev  9 месяцев назад

      Hey, el problema esta en que las animaciones se repiten todo el rato porque esta en estado de loop, para quitarselo selecciona el archibo de animacion de la puerta y asegurate de que tenga la casilla de loop desactivada. Con eso creo que servira

  • @Msbandini14
    @Msbandini14 Год назад +2

    kpooo

  • @Xastias
    @Xastias Год назад +1

    que wenardo este video

  • @11luisdavidmorenolinares59
    @11luisdavidmorenolinares59 7 месяцев назад +2

    hola ayudenmen porfavor no me sirve y me sale invalid layer index '-1' ;(

    • @kickcreator_dev
      @kickcreator_dev  7 месяцев назад

      Oh, es es un caso extraño. Que version de unity usas?

  • @JuanCarlos-hs5sr
    @JuanCarlos-hs5sr Год назад +2

    ¿podrías hacer algún tutorial de como hacer respawn al morir? solo es una sugerencia y gracias por todo.

    • @kickcreator_dev
      @kickcreator_dev  Год назад +1

      Hmm quizás más adelante, gracias por la idea ;D

    • @pixoul72
      @pixoul72 4 месяца назад

      Porfavor hace un tutorial en un futuro sirve bastante​@@kickcreator_dev

  • @angelwtf9642
    @angelwtf9642 9 месяцев назад +1

    muchas gracias

  • @A10StudioOficial
    @A10StudioOficial Год назад +1

    Estaría bien que crees un vídeo de cómo hacer gráficos pre-renderizados al estilo de Fnaf 1, Fnaf plus, sabes, que puedas girar la cámara como camara panorámica pero que ya estén pre-renderizados :)

    • @kickcreator_dev
      @kickcreator_dev  Год назад +1

      Sabes, esa idea me gusta, y mucho... muchas gracias tu feedback bro ^^

  • @user-xu3uf6qd5v
    @user-xu3uf6qd5v 9 месяцев назад +1

    Porque sin antes interactuar con la llave no puedes pasar. La puerta tiene un collider? (Aparte al del detector)

    • @kickcreator_dev
      @kickcreator_dev  9 месяцев назад

      Si, uno solido que no va a dejar que nada lo atraviese, de ahi lo de que la puerta solo se habra cuando tocas la llave

  • @franciscoderege4603
    @franciscoderege4603 2 месяца назад +1

    No me deja poner animaciones en el script de la puerta, me aparece un signo de prohibido. Sabes por que sera??

    • @kickcreator_dev
      @kickcreator_dev  2 месяца назад

      @@franciscoderege4603 porque quizas esa puerta ya tiene animaciones hechas o algun otro elemento que no tedeja ser editado

  • @NekonomeSA
    @NekonomeSA 3 месяца назад +1

    No se si le dará tiempo a responderme porque la verdad tengo el plazo ajustado para presentar el juego en un curso que estoy realizando, pero ¿Como puedo hacer que si pulso dos objetos con script diferente se active una puerta? Si, supongo que con el AND, pero mi problema es que quiero que tengan un bool que al pasar a true se active la puerta.
    Ejemplo menos lioso "Si leo este libro e interactuo con una cama, se abre la puerta"
    Eso es lo que estoy buscando

    • @kickcreator_dev
      @kickcreator_dev  3 месяца назад

      Vale entiendo tu punto, mira, hay varias formas de hacerlo y probablemente la que te voy a contar no sea la mas idónea, pero te servirá.
      Consiste en tener una variable de tipo INT. La cual guardará un valor en números enteros. Luego para detectar que cuando hayas interactuado con dos objetos se abra la puerta, puedes hacer que cada vez que interactúas con estos sumen un punto a tu variable de tipo INT. Ejemplo:
      Para abrir la puerta necesitas tocar el botón rojo y el botón azul. Cuando tocas uno de estos botones, estos suman un punto a tu variable.
      Cuando el jugador haya interactuado con los dos botones, el valor de la variable INT pasará a ser 2. Lo que indicara que el jugador ya ha tocado los 2 botones.
      Entonces haces un IF que cuando detecte que la puntuación de tu variable INT está a 2, active la animación de abrir la puerta.
      Cosas a tener en cuenta:
      Asegurate de que el jugador no pueda tocar el mismo boton 2 veces, porque si no... con tan solo spamear el mismo boton a saco sera suficiente para abrir la puerta. Lo mejor que puedes hacer es que cuando el juador interactue por primera vez con un boton, este ya no lo pueda tocar más hasta que haya tocado el otro boton.
      Espero que te sirva de ayuda, mucho animo con tu proyecto ;D

    • @NekonomeSA
      @NekonomeSA 3 месяца назад +1

      @@kickcreator_dev Mola mucho la resolución, pero me gustaría saber como hacer eso técnicamente, como hacer que el If reconozca el int de otro script, eso es lo que me genera el problema

    • @kickcreator_dev
      @kickcreator_dev  3 месяца назад

      @@NekonomeSA Vale ahí tocaría convertir esa variable int en una variable global. Lo que pasa que eso es complicarse más la vida ya que como mucho esa variable solo la vas a usar una vez. Lo mejor que puedes hacer es que en un mismo script, tengas controlado todo. Los 2 botones, la puerta y al variable. Ya que así te ahorras tener que saltar de un script al otro. Si le explicas a gpt estos procedimientos que te he contado, seguro que te puede ayudar a construir un script con más detalles tecnicos

    • @NekonomeSA
      @NekonomeSA 3 месяца назад

      @@kickcreator_dev El profesor no me deja usarlo para el proyecto 😅😅 dice que después usemos el chat GTP, pero para este proyecto quiere que busquemos por internet y que busquemos ayuda de personas.

  • @JuanCarlos-hs5sr
    @JuanCarlos-hs5sr Год назад +1

    Bro, sé que estoy pendejo pero podrías decirme cómo hacer que la puerta se abra al detectar al jugador sin llave.
    como una puerta con sensor

    • @Xastias
      @Xastias Год назад +2

      puedes usar el OntriggerEnter y pones que al detectar a un GameObjet con una etiqueta se reproduzca la animación de abrirse la puerta

    • @JuanCarlos-hs5sr
      @JuanCarlos-hs5sr Год назад +3

      @@Xastias primero gracias, más o menos tengo una idea, veré como lo hago, no sé programar todo lo he hecho atento a RUclips, XD

    • @kickcreator_dev
      @kickcreator_dev  Год назад +2

      @@JuanCarlos-hs5sr He dejado los codigos de la puerta y la llave en la descripción por si los necesitas más adelante, de todas formas para conseguir lo que quieres simplemente tienes que dejar activo el collider de la puerta cuando quieras que detecte al jugador, independientemente de si antes ha interactuado con la llave o no. Gracias por disfrutar del video ^^

    • @JuanCarlos-hs5sr
      @JuanCarlos-hs5sr Год назад +1

      @@kickcreator_dev Disfrutar, tu haces más que mis profesores de la universidad que o no dan nada, o solo te ponen asignaciones sin explicarte nada

  • @RoelLealA
    @RoelLealA Год назад +2

    Gracias, no me sirvio porque tengo mi puerta con un script propio pero pude entender la lógica y me fue mas facil crear mi propia solucion:
    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    public class DoorZY : MonoBehaviour
    {
    public float speed;
    public float angle;
    public Vector3 direction;
    public bool puedeAbrir;
    public bool abrir;
    private GameObject miObjeto;
    void Start()
    {
    angle = transform.eulerAngles.y;
    }
    void Update()
    {
    if(Mathf.Round(transform.eulerAngles.y) != angle)
    {
    transform.Rotate(direction * speed);
    }
    miObjeto = GameObject.Find("Key1");
    if (Input.GetButtonDown("E") && puedeAbrir == true && abrir == false && miObjeto == null)
    {
    angle = 270f;
    direction = Vector3.up;
    abrir = true;
    }else if (Input.GetButtonDown("E") && puedeAbrir == true && abrir == true && miObjeto == null)
    {
    angle = 120f;
    direction = Vector3.down;
    abrir = false;
    }
    }
    void OnTriggerStay(Collider other)
    {
    if (other.gameObject.tag == "Player")
    {
    puedeAbrir = true;
    }
    }
    void OnTriggerExit(Collider other)
    {
    if (other.gameObject.tag == "Player")
    {
    puedeAbrir = false;
    }
    }
    }

    • @kickcreator_dev
      @kickcreator_dev  Год назад

      Heyyy que bien, me alegro mucho haberte podido ayudar!! Gracias por compartir tus metodos tambien, asi todos aprendemos más hehe