From 8d42bc7ab52a3980df2778d2ee7757e60914e6e0 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期三, 24 九月 2025 19:42:45 +0800
Subject: [PATCH] 125 【战斗】战斗系统 战斗封包处理 支持B426拆分FightAction 支持多重嵌套
---
Main/System/SkillUI/SkillBaseCell.cs | 45 ++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 40 insertions(+), 5 deletions(-)
diff --git a/Main/System/SkillUI/SkillBaseCell.cs b/Main/System/SkillUI/SkillBaseCell.cs
index d8dd906..b284c46 100644
--- a/Main/System/SkillUI/SkillBaseCell.cs
+++ b/Main/System/SkillUI/SkillBaseCell.cs
@@ -50,15 +50,32 @@
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");
}
else
{
@@ -71,7 +88,7 @@
{
if (cellContainer != null)
return;
-
+
var tmp = transform.Find("Container_SkillCell");
if (tmp != null)
{
@@ -88,6 +105,24 @@
cellContainer.transform.SetAsFirstSibling();
}
}
+
+ //缂╂斁鍒板拰鐖秗ect涓�鏍峰ぇ
+ var scale = 1f;
+ var rect = cellContainer.GetComponent<RectTransform>();
+ var parentRect = transform.GetComponent<RectTransform>();
+ 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