From c3525dadcaa037816b654a6bb706284bbbf51af3 Mon Sep 17 00:00:00 2001 From: yyl <yyl> Date: 星期四, 11 九月 2025 17:50:22 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.1.20:10010/r/Project_SG_scripts --- 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