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