Noticias

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

OnCollisionEnter recursivo ????

Iniciado por Cristian07, Noviembre 05, 2015, 07:33:15 AM

Tema anterior - Siguiente tema
por favor alguien me puede decir como puedo lograr que el método que tengo hacerlo recursivo, ya que si lo vuelvo a llamar dentro del mismo método me da un error ;( public  void OnCollisionEnter (Collision obj){
  
        if (obj.gameObject.name == "PlayerModel") { //Aqui se pone un && para saber si el enemigo principal esta atacando también 
            print ("Al enemigo lo tocaron  !!! y fue el persoanje principal :O");
            cur_Health -= 50;
        }
    }

No te entiendo, puedes pasarle el bool despues no es necesario que lo hagas junto con la comparativa del tag.

No se entiende mucho lo que pretendes conseguir o a que te refieres con hacerlo recursivo  esa funcion no la puedes hacer recursiva porque no es una funcion que llames tu mismo desde codigo, se ejecuta automaticamente cuando se produce algun evento (en este caso cuando hay una colision con otro gameobject).Si lo que quieres conseguir es que se ejecute todo el tiempo que este en contacto los dos gameobjects y no solo en el momento exacto de producirse la colision (es lo mas parecido a recursivo que se me ocurre con esa funcion), cambia OnCollisionEnter por OnCollisionStay.P.D. ojo ! si haces eso, deberas modificar la linea "cur_Health -= 50" multiplicandola por Time.deltaTime por ejemplo porque de lo contrario te encontraras que restara 500 por segundo mientras esten tocando los dos objetos.

gracias logre lo que queria hacer Arthure

Etiquetas: