yyl
2025-09-05 fe421e1b91bbb3f69e494ec58dd8092d61346f5e
Main/System/HeroUI/HeroShowBaseCell.cs
@@ -2,11 +2,12 @@
using UnityEngine.UI;
using System.Collections.Generic;
//武将模型站台模块
public class HeroShowBaseCell : MonoBehaviour
{
    Image m_QualityBG;
    Image qualityBG
    Image qualityBG //底座台子
    {
        get
        {
@@ -38,7 +39,7 @@
        {
            if (m_StarRect == null)
            {
                m_StarRect = this.transform.Find("Container_HeroShow/stars");
                m_StarRect = this.transform.Find("Container_HeroShow/layout/stars");
            }
            return m_StarRect;
        }
@@ -54,7 +55,7 @@
                m_StarsImg = new List<Image>();
                for (int i = 0; i < 5; i++)
                {
                    var star = this.transform.GetComponent<Image>("Container_HeroShow/stars/star" + i);
                    var star = this.transform.GetComponent<Image>("Container_HeroShow/layout/stars/star" + i);
                    m_StarsImg.Add(star);
                }
            }
@@ -97,22 +98,31 @@
        {
            if (m_LvText == null)
            {
                m_LvText = this.transform.GetComponent<Text>("Container_HeroShow/lv");
                m_LvText = this.transform.GetComponent<Text>("Container_HeroShow/layout/lv");
            }
            return m_LvText;
        }
    }
    OutlineEx heroNameOutline;
    OutlineEx heroLVOutline;
    OutlineEx m_LvTextOutline;
    OutlineEx heroLVOutline
    {
        get
        {
            if (m_LvTextOutline == null)
            {
                m_LvTextOutline = this.transform.GetComponent<OutlineEx>("Container_HeroShow/layout/lv");
            }
            return m_LvTextOutline;
        }
    }
    void Awake()
    {
        LoadPrefab();
    }
    // 武将小头像,(职业和名称不再此管理,各个界面排版不同)
    public void Init(int heroID, int skinID = 0, int breakLevel = 0, int star = 0, int awakelv = 0, int lv = 0, bool isShowLock = false)
    // 武将模型站台显示
    public void Init(int heroID, int skinID, int breakLevel = 0, int star = 0, int awakelv = 0, int lv = 0, bool isShowLock = false)
    {
        var heroConfig = HeroConfig.Get(heroID);
        qualityBG.SetSprite("herodz" + heroConfig.Quality);
@@ -154,7 +164,6 @@
        nameText.text = breakLevel == 0 ? heroConfig.Name : Language.Get("herocardbreaklv", heroConfig.Name, breakLevel);
        nameText.color = UIHelper.GetUIColorByFunc(heroConfig.Quality);
        heroNameOutline.colorType = (QualityTextColType)heroConfig.Quality;
        lvText.text = string.Format("{0}{1} {2}", Language.Get("L1094"), lv, awakelv == 0 ? Language.Get("herocard13") : Language.Get("herocard12", awakelv));
        heroLVOutline.colorType = awakelv == 0 ? QualityTextColType.None : QualityTextColType.red;
@@ -193,15 +202,13 @@
            //外部控制了尺寸获取为0
            GridLayoutGroup grid = GetComponentInParent<GridLayoutGroup>();
            if (grid != null)
            {
            {
                width = grid.cellSize.x;
            }
        }
        scale = width / rect.sizeDelta.x;
        cellContainer.transform.localScale = new Vector3(scale, scale, scale);
        heroNameOutline = nameText.GetComponent<OutlineEx>();
        heroLVOutline = lvText.GetComponent<OutlineEx>();
        cellContainer.transform.localScale = cellContainer.transform.localScale * scale;
    }
}