Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

Diferenciar Triggers

Iniciado por xCarras, Febrero 27, 2017, 02:33:27 AM

Tema anterior - Siguiente tema
Hola, como puedo diferenciar un OnTriggerStay(){lo que sea} de un trigger a otro? Por ejemplo si estas en un trigger de "x" nombre haz esto y si estas en el otro trigger de nombre "x" haz esto otro.

Vale.. creo que lo que haces es poner solamente el método..
 
para diferenciar los trigger se hace esto..
 

private void OnTriggerStay(Collider o)
    {
        if (o.gameObject.name=="el nombre que tiene el otro trigger" || o.gameObject.transform.tag=="el tag que tiene"|| o.gameObject.layer == 4)
        {
            // do something
        }
    }

 
el parametro de tipo Collider( ' o ' )(no es una carita xD) detecta todos los colliders de los objetos con los que colisione y el método detecta si son triggers, si cumple eso entra..  al ser un componente puedes acceder a su gameobject(que te da el GO) y puedes acceder a él con su nombre, tag o layer
 

o.gameObject.name=="el nombre que tiene el otro trigger"
o.gameObject.transform.tag=="el tag que tiene"
o.gameObject.layer == 4

 
si cumple por su nombre entra en el if y le puedes decir que haga cualquier cosa cuando colisione con un objeto que cumpla las especificaciones que le das dentro del if.

Perfecto!!!! muchísimas gracias.

Etiquetas: