Jump to content
UnitySpain
Sign in to follow this  
Pedro

Problema con Recogida de Objectos

Recommended Posts

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class Agua : MonoBehaviour {


    GameObject player;
    public GameObject Water;


    void Start()
    {
        player = GameObject.FindGameObjectWithTag("Player");

    }

    // Update is called once per frame
    void Update()
    {

    }

    public void OnTriggerEnter(Collider other)
    {

        if (other.gameObject == player)
        {

            RecogerAgua();
        }
    }

        void RecogerAgua()
        {
            if (Input.GetKeyDown(KeyCode.E))
            {
                Water.SetActive(false);
            }
        }
    
}

Hola a todos :D estoy intentando crear un script para recoger objetos al pulsar E pero al ponerlo en unity y darle a play no ocurre nada, sabrian decirme por que? aqui os dejo el script.

 

Edited by Pedro

Share this post


Link to post
Share on other sites

OnTiggerEnter solo se "dispara" en el preciso instante en que entras en ese trigger.....  dura solo un frame... y tiene que coincidir que le des a la "E" en ese frame para cojer el agua.... lo cual va a ser casi imposible....

 

en vez de OnTriggerEnter prueva con "OnTriggerStay":91_thumbsup:

Share this post


Link to post
Share on other sites
1 hour ago, Igor said:

OnTiggerEnter solo se "dispara" en el preciso instante en que entras en ese trigger.....  dura solo un frame... y tiene que coincidir que le des a la "E" en ese frame para cojer el agua.... lo cual va a ser casi imposible....

 

en vez de OnTriggerEnter prueva con "OnTriggerStay":91_thumbsup:

Gracias Funciono

Share this post


Link to post
Share on other sites

es exactamente lo que dijo @Igor, como variante o para agregar si querés podés sensar el estado con una simple bool, cuando se da Enter se pone en true, cuando se da Exit se pone en false, la diferencia entre usar esto y usar stay viene con dos ventajas: 1 - no se llama una y otra vez a Stay (que en tu caso puede resultar innecesario), 2- controlas el momento de entrada y salida, por ej cuando entras reproducis una animación y cuando salís otra.

Saludos

 

Share this post


Link to post
Share on other sites
Sign in to follow this  

×
×
  • Create New...