From 89b772ffbed692acf0674ff87dd68fbc78f54b5e Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期五, 06 三月 2026 16:36:34 +0800
Subject: [PATCH] 492 武将登场-客户端 武将图鉴支持显示活动标识和按开服天显示图鉴
---
Main/System/HeroUI/HeroCollectionCardCell.cs | 3 +
Main/Config/Configs/HeroConfig.cs | 66 ++++++++++++++++++---------------
Main/System/HeroUI/HeroCollectionWin.cs | 10 ++++-
Main/System/HeroUI/HeroUIManager.Collect.cs | 3 +
4 files changed, 49 insertions(+), 33 deletions(-)
diff --git a/Main/Config/Configs/HeroConfig.cs b/Main/Config/Configs/HeroConfig.cs
index e827a51..4b6c0bd 100644
--- a/Main/Config/Configs/HeroConfig.cs
+++ b/Main/Config/Configs/HeroConfig.cs
@@ -1,6 +1,6 @@
锘�//--------------------------------------------------------
// [Author]: YYL
-// [ Date ]: Tuesday, December 16, 2025
+// [ Date ]: Friday, March 6, 2026
//--------------------------------------------------------
using System.Collections.Generic;
@@ -19,6 +19,8 @@
public int HeroID;
public string Name;
public int PlayerCanUse;
+ public int OpenCollectionDay;
+ public int IsActLimit;
public int Country;
public int Quality;
public int Class;
@@ -57,21 +59,25 @@
int.TryParse(tables[2],out PlayerCanUse);
- int.TryParse(tables[3],out Country);
+ int.TryParse(tables[3],out OpenCollectionDay);
- int.TryParse(tables[4],out Quality);
+ int.TryParse(tables[4],out IsActLimit);
- int.TryParse(tables[5],out Class);
+ int.TryParse(tables[5],out Country);
- int.TryParse(tables[6],out Position);
+ int.TryParse(tables[6],out Quality);
- if (tables[7].Contains("["))
+ int.TryParse(tables[7],out Class);
+
+ int.TryParse(tables[8],out Position);
+
+ if (tables[9].Contains("["))
{
- SkinIDList = JsonMapper.ToObject<int[]>(tables[7]);
+ SkinIDList = JsonMapper.ToObject<int[]>(tables[9]);
}
else
{
- string[] SkinIDListStringArray = tables[7].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
+ string[] SkinIDListStringArray = tables[9].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
SkinIDList = new int[SkinIDListStringArray.Length];
for (int i=0;i<SkinIDListStringArray.Length;i++)
{
@@ -79,29 +85,29 @@
}
}
- int.TryParse(tables[8],out AtkSkillID);
+ int.TryParse(tables[10],out AtkSkillID);
- int.TryParse(tables[9],out AngerSkillID);
+ int.TryParse(tables[11],out AngerSkillID);
- int.TryParse(tables[10],out DeathSFX);
+ int.TryParse(tables[12],out DeathSFX);
- int.TryParse(tables[11],out HitSFX);
+ int.TryParse(tables[13],out HitSFX);
- int.TryParse(tables[12],out AtkInheritPer);
+ int.TryParse(tables[14],out AtkInheritPer);
- int.TryParse(tables[13],out DefInheritPer);
+ int.TryParse(tables[15],out DefInheritPer);
- int.TryParse(tables[14],out HPInheritPer);
+ int.TryParse(tables[16],out HPInheritPer);
- BatAttrDict = ConfigParse.ParseIntDict(tables[15]);
+ BatAttrDict = ConfigParse.ParseIntDict(tables[17]);
- if (tables[16].Contains("["))
+ if (tables[18].Contains("["))
{
- FetterIDList = JsonMapper.ToObject<int[]>(tables[16]);
+ FetterIDList = JsonMapper.ToObject<int[]>(tables[18]);
}
else
{
- string[] FetterIDListStringArray = tables[16].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
+ string[] FetterIDListStringArray = tables[18].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
FetterIDList = new int[FetterIDListStringArray.Length];
for (int i=0;i<FetterIDListStringArray.Length;i++)
{
@@ -109,23 +115,23 @@
}
}
- float.TryParse(tables[17],out UIScale);
+ float.TryParse(tables[19],out UIScale);
- Desc = tables[18];
+ Desc = tables[20];
- int.TryParse(tables[19],out RecruitBySelf);
+ int.TryParse(tables[21],out RecruitBySelf);
- int.TryParse(tables[20],out Specialty);
+ int.TryParse(tables[22],out Specialty);
- int.TryParse(tables[21],out HurtType);
+ int.TryParse(tables[23],out HurtType);
- if (tables[22].Contains("["))
+ if (tables[24].Contains("["))
{
- Specialty2 = JsonMapper.ToObject<int[]>(tables[22]);
+ Specialty2 = JsonMapper.ToObject<int[]>(tables[24]);
}
else
{
- string[] Specialty2StringArray = tables[22].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
+ string[] Specialty2StringArray = tables[24].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
Specialty2 = new int[Specialty2StringArray.Length];
for (int i=0;i<Specialty2StringArray.Length;i++)
{
@@ -133,13 +139,13 @@
}
}
- if (tables[23].Contains("["))
+ if (tables[25].Contains("["))
{
- TalentList = JsonMapper.ToObject<int[]>(tables[23]);
+ TalentList = JsonMapper.ToObject<int[]>(tables[25]);
}
else
{
- string[] TalentListStringArray = tables[23].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
+ string[] TalentListStringArray = tables[25].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
TalentList = new int[TalentListStringArray.Length];
for (int i=0;i<TalentListStringArray.Length;i++)
{
diff --git a/Main/System/HeroUI/HeroCollectionCardCell.cs b/Main/System/HeroUI/HeroCollectionCardCell.cs
index 5392f42..01476c2 100644
--- a/Main/System/HeroUI/HeroCollectionCardCell.cs
+++ b/Main/System/HeroUI/HeroCollectionCardCell.cs
@@ -16,7 +16,7 @@
// [SerializeField] Button bookLVBtn;
[SerializeField] GameObject unGetObj;
[SerializeField] GameObject activeObj; // 鍙縺娲诲甫娴佸厜鏁堟灉鏉愯川
-
+ [SerializeField] GameObject actLimitObj; // 娲诲姩闄愬畾
public void Display(int index, int quality)
{
var heroID = HeroUIManager.Instance.heroCollectDict[quality][index];
@@ -34,6 +34,7 @@
activeObj.SetActive(funcState == 1);
// bookLVBtn.SetActive(funcState > 1);
unGetObj.SetActive(funcState == 0);
+ actLimitObj.SetActive(heroConfig.IsActLimit == 1);
countryImg.SetSprite(HeroUIManager.Instance.GetCountryIconName(heroConfig.Country));
jobImg.SetSprite(HeroUIManager.Instance.GetJobIconName(heroConfig.Class));
diff --git a/Main/System/HeroUI/HeroCollectionWin.cs b/Main/System/HeroUI/HeroCollectionWin.cs
index 16a2331..50bd021 100644
--- a/Main/System/HeroUI/HeroCollectionWin.cs
+++ b/Main/System/HeroUI/HeroCollectionWin.cs
@@ -44,24 +44,30 @@
PackManager.Instance.RefreshItemEvent += RefreshItemEvent;
HeroUIManager.Instance.OnHeroCollectEvent += OnHeroCollectEvent;
heroListScroller.OnRefreshCell += OnRefreshCell;
+ TimeMgr.Instance.OnDayEvent += OnDayEvent;
HeroUIManager.Instance.SortHeroCollectList();
Display();
}
protected override void OnPreClose()
{
-
PackManager.Instance.gridRefreshEvent -= GridRefreshEvent;
PackManager.Instance.RefreshItemEvent -= RefreshItemEvent;
HeroUIManager.Instance.OnHeroCollectEvent -= OnHeroCollectEvent;
heroListScroller.OnRefreshCell -= OnRefreshCell;
+ TimeMgr.Instance.OnDayEvent -= OnDayEvent;
}
+ private void OnDayEvent()
+ {
+ HeroUIManager.Instance.SortHeroCollectList();
+ CreateScroller();
+ }
void Display()
{
fiterManager.Display(0, SelectJobCountry);
-
+
// CreateScroller();
// RefreshTotalAttr();
RefreshPackCount();
diff --git a/Main/System/HeroUI/HeroUIManager.Collect.cs b/Main/System/HeroUI/HeroUIManager.Collect.cs
index d9abae3..11caa2a 100644
--- a/Main/System/HeroUI/HeroUIManager.Collect.cs
+++ b/Main/System/HeroUI/HeroUIManager.Collect.cs
@@ -87,6 +87,9 @@
HeroConfig heroConfig = HeroConfig.Get(heroID);
if (heroConfig.PlayerCanUse == 0)
continue;
+ // 鏂板锛氬紑鏈嶇x澶╂樉绀哄浘閴达紝0琛ㄧず涓嶉檺鍒跺紑鏈嶅ぉ
+ if (heroConfig.OpenCollectionDay > 0 && TimeUtility.OpenDay + 1 < heroConfig.OpenCollectionDay)
+ continue;
if (!heroCollectDict.ContainsKey(heroConfig.Quality))
{
heroCollectDict[heroConfig.Quality] = new List<int>();
--
Gitblit v1.8.0