From cb653cf75b17b9bdca0b5b9e6b88edf1ca72e90c Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期五, 17 十月 2025 09:54:11 +0800
Subject: [PATCH] 0312 删除旧的日常代码3
---
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