示例#1
0
    DatosCiudd utilCiud;  //variable tipo estructura de ciudadano


    void OnCollisionEnter(Collision colision) //funcion onCollision para dar mensaje cuando el heroe toca algun personaje
    {
        if (colision.transform.name == "Zombi")
        {
            utilZombi = colision.gameObject.GetComponent <Zombii>().utilZombii; //obtiene el dato de tipo estructura y lo asigna a utilZombi
            Debug.Log("waaarrrr quiero comer " + utilZombi.queComer);
        }
        else if (colision.transform.name == "Ciudadanito")
        {
            utilCiud = colision.gameObject.GetComponent <Ciudadano>().utilCiudd; //obtiene el dato de tipo estructura y lo asigna a util
            Debug.Log("hola soy " + utilCiud.varNombrs + " y tengo " + utilCiud.edadCiudd);
        }
    }
    void Start()
    {
        heroe = GameObject.CreatePrimitive(PrimitiveType.Cube); //crea personajes
        heroe.AddComponent <PersPersonal>();                    //añade componentes
        heroe.AddComponent <MovFps>();
        heroe.AddComponent <Rigidbody>();
        GameObject movCam = new GameObject(); //crea un objeto para añadirle la camara y añadir este al heroe

        movCam.AddComponent <Camera>();
        movCam.AddComponent <CamFps>();
        movCam.transform.SetParent(heroe.transform);
        heroe.transform.position = new Vector3(Random.Range(1, 21), 0.5f, Random.Range(1, 21));

        int numZomb = Random.Range(9, 15); //random para creacion de zombies

        for (int i = 0; i < numZomb; i++)  //for para crear zombis
        {
            zombi = GameObject.CreatePrimitive(PrimitiveType.Cube);
            zombi.AddComponent <Zombii>();
            zombi.transform.position = zombi.GetComponent <Zombii>().mov;
            utilZombi = zombi.GetComponent <Zombii>().utilZombii;
            zombi.GetComponent <Renderer>().material.color = utilZombi.colorZombi;
            zombi.AddComponent <Rigidbody>();
            zombi.name = "Zombi";
        }

        int numCiudd = Random.Range(5, 20 - numZomb); //random para creacion de ciudadanos

        for (int i = 0; i < numCiudd; i++)            //for para creacion de ciudadanos
        {
            ciudadano = GameObject.CreatePrimitive(PrimitiveType.Cube);
            ciudadano.AddComponent <Ciudadano>();
            ciudadano.transform.position = ciudadano.GetComponent <Ciudadano>().ubic;
            ciudadano.AddComponent <Rigidbody>();
            ciudadano.name = "Ciudadanito";
        }
    }