/// <summary> /// almacenamos en el struct del aldeano el nombre /// y su edad /// </summary> /// <returns></returns> public InfoAlde GetInfo() { InfoAlde infoAlde = new InfoAlde(); infoAlde.edad = age; infoAlde.name = nombres.ToString(); return(infoAlde); }
/// <summary> /// la distancia para el activamiento del hub /// </summary> /// <returns></returns> IEnumerator BuscaEntidades() { zombie = GameObject.FindGameObjectsWithTag("Zombie"); aldeanos = GameObject.FindGameObjectsWithTag("Villager"); // Hub para el aldeano foreach (GameObject item in aldeanos) { yield return(new WaitForEndOfFrame()); ald.Villager componenteAldeano = item.GetComponent <ald.Villager>(); if (componenteAldeano != null) { distancia = Mathf.Sqrt(Mathf.Pow((item.transform.position.x - transform.position.x), 2) + Mathf.Pow((item.transform.position.y - transform.position.y), 2) + Mathf.Pow((item.transform.position.z - transform.position.z), 2)); if (distancia < 5f) { time = 0; infoAlde = item.GetComponent <ald.Villager>().infoAlde; textoAldeano.text = "Hola, soy " + infoAlde.name + " y tengo " + infoAlde.edad.ToString() + " años"; } if (time > 3) { textoAldeano.text = " "; } } } // Hub para el zombie foreach (GameObject itemZ in zombie) { yield return(new WaitForEndOfFrame()); zom.Zombie componenteZombie = itemZ.GetComponent <zom.Zombie>(); if (componenteZombie != null) { distanciaZ = Mathf.Sqrt(Mathf.Pow((itemZ.transform.position.x - transform.position.x), 2) + Mathf.Pow((itemZ.transform.position.y - transform.position.y), 2) + Mathf.Pow((itemZ.transform.position.z - transform.position.z), 2)); if (distanciaZ < 5f) { time = 0; infoZombie = itemZ.GetComponent <zom.Zombie>().infoZombie; textoZombie.text = "Waaaarrrr quiero comer " + infoZombie.gusto; } if (time > 3) { textoZombie.text = " "; } } } yield return(new WaitForSeconds(0.1f)); StartCoroutine(BuscaEntidades()); }
/// <summary> /// se toman los valores almacendos en el estruc para imprimirlos cada que el heroe colisione con /// el respectivo GameObject /// </summary> /// <param name="collision"></param> public void OnCollisionEnter(Collision collision) { if (collision.gameObject.GetComponent <Zom.Zombie>()) { InfoZomb info = collision.gameObject.GetComponent <Zom.Zombie>().GetInfo(); Debug.Log("Waaar quiero comer " + info.gusto); } if (collision.gameObject.GetComponent <ald.Aldeano>()) { InfoAlde info = collision.gameObject.GetComponent <ald.Aldeano>().GetInfo(); Debug.Log("soy " + info.name + " y tengo " + info.edad); } }