예제 #1
0
    /// <summary>
    /// Actualiza o refresca la equipacion seleccionado
    /// </summary>
    /// <param name="_desplazamiento">Offset respecto al id de la equipacion actual que se quiere mostrar (si es 0, sirve para refrescar la equipacion actual)</param>
    /// <param name="_mostrarTooltip">Indica si hay que mostrar el tooltip asociado a la equipacion (si procede)</param>
    public void CambiarEquipacionSeleccionada(int _desplazamiento, bool _mostrarTooltip = false)
    {
        Equipacion equipacion;

        if (m_tipoVestuario == TipoVestuario.LANZADOR)
        {
            // verificar que el LANZADOR seleccionado este adquirido (sino cambiarlo por otro que si lo este)
            Jugador tirador = InfoJugadores.instance.GetTirador(Interfaz.instance.Thrower);
            if (tirador.estado != Jugador.Estado.ADQUIRIDO)
            {
                Interfaz.instance.Thrower = InfoJugadores.instance.GetPosicionSiguienteTiradorAdquirido();
                //Interfaz.instance.Thrower = Interfaz.instance.Thrower; // <= actualiza la equipacion del lanzador
            }

            equipacion = EquipacionManager.instance.CambiarEquipacionLanzador(_desplazamiento);
        }
        else
        {
            // verificar que el PORTERO seleccionado este adquirido (sino cambiarlo por otro que si lo este)
            Jugador portero = InfoJugadores.instance.GetPortero(Interfaz.instance.Goalkeeper);
            if (portero.estado != Jugador.Estado.ADQUIRIDO)
            {
                Interfaz.instance.Goalkeeper = InfoJugadores.instance.GetPosicionSiguienteTiradorAdquirido();
                //Interfaz.instance.Goalkeeper = Interfaz.instance.Goalkeeper; // <= actualiza la equipacion del portero
            }

            equipacion = EquipacionManager.instance.CambiarEquipacionPortero(_desplazamiento);
        }

        // mostrar el tooltip si procede
        if (_mostrarTooltip)
        {
            m_tooltipItemDisponible.Show(equipacion);
        }
    }
    /// <summary>
    /// Muestra la informacion asociada al jugador recibido como parametro
    /// </summary>
    /// <param name="_jugador"></param>
    public void Show(Jugador _jugador)
    {
        if (_jugador == null)
        {
            return;
        }
        else
        {
            m_txtNombre.text       = _jugador.nombre.ToUpper();
            m_txtNombreSombra.text = _jugador.nombre.ToUpper();
            m_txtPais.text         = _jugador.pais.ToUpper();
            m_txtPaisSombra.text   = _jugador.pais.ToUpper();

            m_tooltipItemDisponible.Show(_jugador);

            // mostrar las habilidades que tiene el jugador
            int i = 0;
            if (_jugador.habilidades != null)
            {
                for (; i < _jugador.habilidades.Length; ++i)
                {
                    m_iconoHabilidad[i].texture = AvataresManager.instance.GetTexturaHabilidad((int)_jugador.habilidades[i]);
                    m_txtHabilidadesTitulo[i].GetComponent <txtText>().SetText(Habilidades.SkillToString(_jugador.habilidades[i]).ToUpper());
                    m_txtHabilidadesTexto[i].GetComponent <txtText>().SetText(Habilidades.SkillDescription(_jugador.habilidades[i]));
                }
            }

            // ocultar los textos para mostrar habilidades que sobran
            for (; i < m_txtHabilidadesTexto.Length; ++i)
            {
                m_iconoHabilidad[i].texture    = null;
                m_txtHabilidadesTitulo[i].text = "";
                m_txtHabilidadesTexto[i].text  = "";
            }

            // mostrar el avatar del jugador y los botones para paginar fichas
            if (InfoJugadores.instance.EsLanzador(_jugador.assetName))
            {
                m_avatar.texture          = AvataresManager.instance.GetTexturaLanzadorCuerpoEntero(_jugador.idModelo);
                m_btnFichaAnterior.action = (_name) => {
                    ifcVestuario.instance.CambiarJugadorSeleccionado(-1);
                    Show(InfoJugadores.instance.GetTirador(Interfaz.instance.Thrower));
                };
                m_btnFichaSiguiente.action = (_name) => {
                    ifcVestuario.instance.CambiarJugadorSeleccionado(+1);
                    Show(InfoJugadores.instance.GetTirador(Interfaz.instance.Thrower));
                };
            }
            else
            {
                m_avatar.texture          = AvataresManager.instance.GetTexturaPorteroCuerpoEntero(_jugador.idModelo);
                m_btnFichaAnterior.action = (_name) => {
                    ifcVestuario.instance.CambiarJugadorSeleccionado(-1);
                    Show(InfoJugadores.instance.GetPortero(Interfaz.instance.Goalkeeper));
                };
                m_btnFichaSiguiente.action = (_name) => {
                    ifcVestuario.instance.CambiarJugadorSeleccionado(+1);
                    Show(InfoJugadores.instance.GetPortero(Interfaz.instance.Goalkeeper));
                };
            }
        }
    }