private btnButton m_collider; // <== boton que funciona como collider de este control // ------------------------------------------------------------------------------ // --- METODOS ---------------------------------------------------------------- // ------------------------------------------------------------------------------ /// <summary> /// Inicializa la informacion a mostrar en este control /// </summary> /// <param name="_usuario"></param> /// <param name="_listadoJugadoresFavoritos">Listado de jugadores (GameObject) al que pertenece este control</param> public void SetInfoJugador(Usuario _usuario, ifcFavoritos _listadoJugadoresFavoritos = null) { // obtener la referencia a los elementos de esta interfaz if (m_txtUsuario == null) { m_txtUsuario = (GUIText)transform.FindChild("txtUsuario").GetComponent("GUIText"); } if (m_txtVictoriasDerrotas == null) { m_txtVictoriasDerrotas = (GUIText)transform.FindChild("txtVictoriasDerrotas").GetComponent("GUIText"); } if (_usuario == null) { // si no se especifica usuario => no mostrar nada en el control m_txtUsuario.text = ""; m_txtVictoriasDerrotas.text = ""; } else { // guardar el nombre del usuario m_nombreJugador = _usuario.alias; // calcular el porcentaje de victorias float porcentajeVictorias; if (_usuario.numVictorias + _usuario.numDerrotas == 0) { porcentajeVictorias = 100.0f; } else { porcentajeVictorias = 100.0f * _usuario.numVictorias / (_usuario.numVictorias + _usuario.numDerrotas); } // inicializar los textos m_txtUsuario.text = "<color=#ffffff>" + _usuario.alias + "</color>" + " <color=#ffd200>" + (int)porcentajeVictorias + "%</color>"; m_txtVictoriasDerrotas.text = "<color=#87befe>" + _usuario.numVictorias + "/" + _usuario.numDerrotas + "</color>"; } // si el elemento pertenece a un listado if (_listadoJugadoresFavoritos != null) { // inicializar el collider if (m_collider == null) { m_collider = (btnButton)transform.FindChild("collider").GetComponent("btnButton"); } m_collider.action = (_name) => { // si el control tiene un nombre de usuario => seleccionarlo if (m_txtUsuario.text != "") { _listadoJugadoresFavoritos.SeleccionarJugadorEnListado(this); } }; } // por defecto deseleccionar este elemento m_collider.Deselect(); }
// ------------------------------------------------------------------------------ // --- METODOS ---------------------------------------------------------------- // ------------------------------------------------------------------------------ void Awake() { instance = this; }