From 9d6b41ab1727ea544629dfc81e5395b2eb6964b5 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期一, 29 九月 2025 02:31:49 +0800
Subject: [PATCH] 197 子 【内政】淘金系统 / 【内政】淘金系统-客户端

---
 Main/System/SkillUI/SkillBaseCell.cs |   58 +++++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 51 insertions(+), 7 deletions(-)

diff --git a/Main/System/SkillUI/SkillBaseCell.cs b/Main/System/SkillUI/SkillBaseCell.cs
index 1e1b161..934ef53 100644
--- a/Main/System/SkillUI/SkillBaseCell.cs
+++ b/Main/System/SkillUI/SkillBaseCell.cs
@@ -45,24 +45,57 @@
         }
     }
 
+    Image m_WordBG;
+    Image wordBG
+    {
+        get
+        {
+            if (m_WordBG == null)
+            {
+                m_WordBG = this.transform.GetComponent<Image>("Container_SkillCell/Image");
+            }
+            return m_WordBG;
+        }
+    }
+
+
     void Awake()
     {
         LoadPrefab();
     }
 
-    private void Init(int skillID, UnityAction onclick, bool showType = false)
+    public void Init(int skillID, UnityAction onclick = null, bool showType = false)
     {
+        LoadPrefab();   //瀛樺湪琚嵏杞界殑鍙兘锛岄噸鏂板姞杞�
         var config = SkillConfig.Get(skillID);
-        skillIcon.SetSprite(config.IconName);
-        skillBtn.AddListener(onclick);
+        if (config == null)
+        {
+            Debug.LogErrorFormat("鎶�鑳芥湭閰嶇疆 : {0}", skillID);
+            return;
+        }
+        skillIcon.SetOrgSprite(config.IconName, "SkillIcon");
+#if UNITY_EDITOR
+        if (string.IsNullOrEmpty(config.IconName))
+        { 
+            //鍐呯綉娴嬭瘯
+            skillIcon.SetOrgSprite("skillicondefault", "SkillIcon");
+        }
+#endif
+        
+        skillBtn.AddListener(()=>
+        {
+            onclick?.Invoke();
+        });
 
         if (showType)
         {
-            skillType.text = Language.Get(config.FuncType == 23 ? "HeroSkillType_1" : "HeroSkillType_2");
+            skillType.text = Language.Get(config.FuncType == 1 ? "HeroSkillType_1" : "HeroSkillType_2");
+            wordBG.SetActive(true);
         }
         else
-        { 
+        {
             skillType.text = string.Empty;
+            wordBG.SetActive(false);
         }
     }
 
@@ -93,8 +126,19 @@
         var scale = 1f;
         var rect = cellContainer.GetComponent<RectTransform>();
         var parentRect = transform.GetComponent<RectTransform>();
-        scale = parentRect.sizeDelta.x / rect.sizeDelta.x;
-        cellContainer.transform.localScale = new Vector3(scale, scale, scale);
+        float width = parentRect.sizeDelta.x;
+        if (width <= 0f)
+        {
+            //澶栭儴鎺у埗浜嗗昂瀵歌幏鍙栦负0
+            GridLayoutGroup grid = GetComponentInParent<GridLayoutGroup>();
+            if (grid != null)
+            { 
+                width = grid.cellSize.x;
+            }
+            
+        }
+        scale = width / rect.sizeDelta.x;
+        cellContainer.transform.localScale = cellContainer.transform.localScale * scale;
     }
 }
 

--
Gitblit v1.8.0