From 3755702387052dd3996b990db9c570a5be917dbc Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期三, 10 九月 2025 22:06:36 +0800
Subject: [PATCH] 117 【武将】武将系统 - 红点
---
Main/System/HeroUI/HeroTrainWin.cs | 72 ++++++++++++++++++++++++++++++++++-
1 files changed, 69 insertions(+), 3 deletions(-)
diff --git a/Main/System/HeroUI/HeroTrainWin.cs b/Main/System/HeroUI/HeroTrainWin.cs
index d361c38..c30e444 100644
--- a/Main/System/HeroUI/HeroTrainWin.cs
+++ b/Main/System/HeroUI/HeroTrainWin.cs
@@ -88,6 +88,11 @@
[SerializeField] Text freezeAawkeLVText;
[SerializeField] List<Image> starImgFreezeList;
+ //浼孩鐐圭敤鍥剧墖浠f浛
+ [SerializeField] Image redpointAwake;
+ [SerializeField] Image redpointGift;
+ [SerializeField] Image redpointLVUP;
+
string guid;
HeroInfo hero;
@@ -168,7 +173,7 @@
awakeCellList = new List<GameObject>();
freezeTipBtn.AddListener(() =>
- {
+ {
freezeTipGo.SetActive(!freezeTipGo.activeSelf);
});
}
@@ -242,6 +247,9 @@
RefreshGift();
RefreshAwake();
RefreshFreeze();
+ RefreshRedImg();
+
+ HeroUIManager.Instance.RemoveNewHero(hero.heroId);
}
void RefreshItemLockEvent(PackType type, string guid, bool lockState)
@@ -333,7 +341,7 @@
{
RefreshStars();
nameText.text = hero.breakLevel == 0 ? hero.heroConfig.Name : Language.Get("herocardbreaklv", hero.heroConfig.Name, hero.breakLevel);
-
+
nameText.color = UIHelper.GetUIColorByFunc(hero.Quality);
if (hero.Quality >= 4)
@@ -713,7 +721,65 @@
{
freezeTipBtn.SetActive(false);
}
-
+
freezeTipGo.SetActive(false);
}
+
+ void RefreshRedImg()
+ {
+ redpointAwake.SetActive(false);
+ redpointGift.SetActive(false);
+ redpointLVUP.SetActive(false);
+ if (!hero.IsInTeamByTeamType(TeamType.Story))
+ {
+ return;
+ }
+
+
+ var heroCnt = PackManager.Instance.GetItemCountByID(PackType.Hero, hero.heroId);
+ var itemPack = PackManager.Instance.GetSinglePack(PackType.Item);
+
+ //5鏄熷悗鎵嶈兘瑙夐啋
+ if (hero.heroStar >= HeroUIManager.Instance.starLevelCanAwake)
+ {
+ //鍒ゆ柇瑙夐啋鏉愭枡鏄惁瓒冲
+ var maxAwakeLV = HeroAwakeConfig.GetMaxAwakeLV(hero.heroId);
+ if (hero.awakeLevel < maxAwakeLV)
+ {
+ var config = HeroQualityAwakeConfig.GetQualityAwakeConfig(hero.Quality, hero.awakeLevel);
+ if (itemPack.GetCountById(config.UPCostItem[0]) >= config.UPCostItem[1])
+ {
+ redpointAwake.SetActive(true);
+ }
+ }
+ }
+
+ if (heroCnt > 1)
+ {
+ redpointGift.SetActive(true);
+ }
+
+ var maxBreakLV = HeroBreakConfig.GetMaxBreakLv(hero.heroId);
+ if (hero.breakLevel < maxBreakLV)
+ {
+ if (HeroUIManager.Instance.IsLVMaxByBreakLevel(hero))
+ {
+ var breakConfig = HeroQualityBreakConfig.GetQualityBreakConfig(hero.Quality, hero.breakLevel);
+ if (itemPack.GetCountById(breakConfig.UPCostItem[0]) >= breakConfig.UPCostItem[1])
+ {
+ redpointLVUP.SetActive(true);
+ return;
+ }
+ }
+ }
+
+ if (!HeroUIManager.Instance.IsLVMax(hero))
+ {
+ var lvupConfig = HeroQualityLVConfig.GetQualityLVConfig(hero.Quality, hero.heroLevel);
+ if (itemPack.GetCountById(lvupConfig.UPCostItem[0]) >= lvupConfig.UPCostItem[1])
+ {
+ redpointLVUP.SetActive(true);
+ }
+ }
+ }
}
\ No newline at end of file
--
Gitblit v1.8.0