Noticias

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

usar variables de otra clase

Iniciado por Gilberto, Noviembre 01, 2017, 02:38:11 AM

Tema anterior - Siguiente tema
Noviembre 01, 2017, 02:38:11 AM Ultima modificación: Enero 01, 1970, 01:00:00 AM por Gilberto
tengo un problema , tengo dos clases , una asignada al gameobject y el otro scripts esta asignado a imágenes que al ser clickeada debe pasarle un numero al scripts de gameobject pero no se como hacerlo, podrian ayudarme???
 
 

Hola, cuando asignas un script a un gameobject lo que estás haciendo es asignar un componente. Si querés comunicarte entre componentes primero tenés que tener una referencia al otro objeto (el gameObject que decís), entonces en el script que tiene la cámara podes usar :
 

public GameObject m_targetObject;

 
y referenciarlo desde el editor, o usar GameObject.Find(*nombre*), por nombrar algunas formas, hay algunos caminos más, pensa que una vez que tengas referencia de cualquier componente de tu objeto target vas a poder obtener su gameObject, generalmente usando el getter ".gameObject"
 
Una vez tengas la referencia si queres acceder al Componente (script asignado al objeto) lo que tenés que usar es un GetComponent<*nombredelComponente*>() y de ahí hacés lo que querés.
 
Podrías tambien en primer instancia haber hecho esto:
 

//TipoComponente es la clase del script del gameObject
public TipoComponente m_targetObject;

 
y cuando arrastras el objeto hacia el casillero te toma directamente el componente, en este escenario no es necesario usar GetComponent.

Noviembre 01, 2017, 02:20:37 PM #2 Ultima modificación: Enero 01, 1970, 01:00:00 AM por Gilberto


Vale muchísimas gracias, ya puedo obtener los valores.


Etiquetas: