From 5301d08eac2f7f0b25ce3f2bef7d24f92c79321c Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期四, 19 三月 2026 15:20:20 +0800
Subject: [PATCH] 533 开服冲榜-客户端 特权卡标识更换正式资源
---
Main/System/OSActivity/OSRankHeroCallGiftCell.cs | 11 +++++
Main/System/OSActivity/OSGalaGiftCell.cs | 11 +++++
Main/System/TimeRush/TimeRushManager.cs | 2 -
Main/System/Invest/InvestModel.cs | 45 ++++++++++++++++++++--
Main/System/OSActivity/OSRankGiftBaseCell.cs | 11 +++++
Main/System/TimeRush/TimeRushGiftCell.cs | 11 +++++
6 files changed, 80 insertions(+), 11 deletions(-)
diff --git a/Main/System/Invest/InvestModel.cs b/Main/System/Invest/InvestModel.cs
index 0dfa8b1..378a301 100644
--- a/Main/System/Invest/InvestModel.cs
+++ b/Main/System/Invest/InvestModel.cs
@@ -4,6 +4,7 @@
using UnityEngine.UI;
using System.Linq;
using LitJson;
+using UnityEngine;
public class InvestModel : GameSystemManager<InvestModel>
{
@@ -15,6 +16,9 @@
Dictionary<int, int[][]> m_InvestItems = new Dictionary<int, int[][]>();
Dictionary<int, int> m_InvestDays = new Dictionary<int, int>(); //鎶曡祫瀵瑰簲澶╂暟
Dictionary<int, int> m_InvestMaxDays = new Dictionary<int, int>(); //鎶曡祫瀵瑰簲鏈�澶ц喘涔扮疮鍔犲ぉ鏁�
+
+ public Dictionary<int, int[]> textColors = new();
+ public Dictionary<int, int[]> outlineColors = new();
//鎶曡祫瀵瑰簲鍏呭�糏D
Dictionary<int, int[]> m_InvestRechargeIds = new Dictionary<int, int[]>();
@@ -42,7 +46,7 @@
Dictionary<int, int> m_PrivilegeFightSpeed = new Dictionary<int, int>();
// 鑻遍泟绉垎鎷涘嫙寮�鍚殑鐗规潈绫诲瀷
int[] heroScoreCallOpenType;
-
+
public event Action<int> onInvestUpdate;
@@ -72,13 +76,25 @@
return FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.PrivilegeCard);
}
-
+
public void OnBeforePlayerDataInitialize()
{
m_InvestInfos.Clear();
lastTotalBuyCountDict.Clear();
}
+
+
+ public Color32 ParseColor32(int[] colorArr)
+ {
+ return new Color32()
+ {
+ r = (byte)(colorArr.Length > 0 ? colorArr[0] : 0),
+ g = (byte)(colorArr.Length > 1 ? colorArr[1] : 0),
+ b = (byte)(colorArr.Length > 2 ? colorArr[2] : 0),
+ a = (byte)(colorArr.Length > 3 ? colorArr[3] : 255),
+ };
+ }
void ParseConfig()
@@ -95,7 +111,6 @@
m_InvestMaxDays = ConfigParse.ParseIntDict(funcConfig.Numerical2);
m_InvestItems = ConfigParse.ParseIntArray2Dict(funcConfig.Numerical3);
-
funcConfig = FuncConfigConfig.Get("InvestPower");
m_InvestAddFBCount = ConfigParse.ParseDictInDict(funcConfig.Numerical1);
m_InvestFreeFBID = ConfigParse.ParseIntArrayDict(funcConfig.Numerical2);
@@ -107,7 +122,27 @@
m_PrivilegeLins = ConfigParse.ParseIntDict(funcConfig.Numerical1);
m_PrivilegeFightSpeed = ConfigParse.ParseIntDict(funcConfig.Numerical2);
heroScoreCallOpenType = JsonMapper.ToObject<int[]>(funcConfig.Numerical3);
-
+ textColors = ConfigParse.ParseIntArrayDict(funcConfig.Numerical4);
+ outlineColors = ConfigParse.ParseIntArrayDict(funcConfig.Numerical5);
+
+ }
+
+ public Color32 GetTextColor(int vipLevel)
+ {
+ if (textColors.ContainsKey(vipLevel))
+ {
+ return ParseColor32(textColors[vipLevel]);
+ }
+ return Color.white;
+ }
+
+ public Color32 GetOutlineColor(int vipLevel)
+ {
+ if (outlineColors.ContainsKey(vipLevel))
+ {
+ return ParseColor32(outlineColors[vipLevel]);
+ }
+ return Color.white;
}
Dictionary<int, int> lastTotalBuyCountDict = new Dictionary<int, int>();
@@ -175,7 +210,7 @@
//鏈堝崱 闄愭椂绫诲瀷鐨勬姇璧� 鏈埌鏈熷氨绠楁姇璧�
return m_InvestInfos[type].InvestEndTime > 0 && m_InvestInfos[type].InvestEndTime > TimeUtility.AllSeconds;
}
-
+
//姘镐箙绫诲瀷鐨勬姇璧� 鍙璐拱浜嗗氨绠楁姇璧�
return m_InvestInfos[type].InvestBuyTime > 0;
}
diff --git a/Main/System/OSActivity/OSGalaGiftCell.cs b/Main/System/OSActivity/OSGalaGiftCell.cs
index 602d89f..f14a629 100644
--- a/Main/System/OSActivity/OSGalaGiftCell.cs
+++ b/Main/System/OSActivity/OSGalaGiftCell.cs
@@ -7,6 +7,7 @@
{
[SerializeField] ImageEx vipImage;
[SerializeField] TextEx vipText;
+ [SerializeField] OutlineEx vipTextOutline;
[SerializeField] ImageEx rateImage;
[SerializeField] TextEx rateText;
[SerializeField] Text nameText;
@@ -28,8 +29,16 @@
id -= 100000000;
var ctgConfig = CTGConfig.Get(id);
nameText.text = ctgConfig.Title;
+
vipImage.SetActive(ctgConfig.VipLevel > 0);
- vipText.text = ctgConfig.VipLevel > 0 ? Language.Get($"VipLevelInfo{ctgConfig.VipLevel}") : string.Empty;
+ if (ctgConfig.VipLevel > 0)
+ {
+ vipImage.SetSprite($"VipLevel{ctgConfig.VipLevel}");
+ vipText.text = Language.Get($"VipLevelInfo{ctgConfig.VipLevel}");
+ vipText.color = InvestModel.Instance.GetTextColor(ctgConfig.VipLevel);
+ vipTextOutline.OutlineColor = InvestModel.Instance.GetOutlineColor(ctgConfig.VipLevel);
+ }
+
rateImage.SetActive(true);
rateText.text = Language.Get("DailySpecials07", ctgConfig.Percentage);
for (int i = 0; i < itemCells.Length; i++)
diff --git a/Main/System/OSActivity/OSRankGiftBaseCell.cs b/Main/System/OSActivity/OSRankGiftBaseCell.cs
index e2982d4..ddfd7e5 100644
--- a/Main/System/OSActivity/OSRankGiftBaseCell.cs
+++ b/Main/System/OSActivity/OSRankGiftBaseCell.cs
@@ -5,6 +5,7 @@
{
[SerializeField] protected ImageEx vipImage;
[SerializeField] protected TextEx vipText;
+ [SerializeField] protected OutlineEx vipTextOutline;
[SerializeField] protected ImageEx rateImage;
[SerializeField] protected TextEx rateText;
[SerializeField] protected Text nameText;
@@ -31,8 +32,16 @@
id -= 100000000;
var ctgConfig = CTGConfig.Get(id);
nameText.text = ctgConfig.Title;
+
vipImage.SetActive(ctgConfig.VipLevel > 0);
- vipText.text = ctgConfig.VipLevel > 0 ? Language.Get($"VipLevelInfo{ctgConfig.VipLevel}") : string.Empty;
+ if (ctgConfig.VipLevel > 0)
+ {
+ vipImage.SetSprite($"VipLevel{ctgConfig.VipLevel}");
+ vipText.text = Language.Get($"VipLevelInfo{ctgConfig.VipLevel}");
+ vipText.color = InvestModel.Instance.GetTextColor(ctgConfig.VipLevel);
+ vipTextOutline.OutlineColor = InvestModel.Instance.GetOutlineColor(ctgConfig.VipLevel);
+ }
+
rateImage.SetActive(true);
rateText.text = Language.Get("DailySpecials07", ctgConfig.Percentage);
for (int i = 0; i < itemCells.Length; i++)
diff --git a/Main/System/OSActivity/OSRankHeroCallGiftCell.cs b/Main/System/OSActivity/OSRankHeroCallGiftCell.cs
index b1b2a18..2b23760 100644
--- a/Main/System/OSActivity/OSRankHeroCallGiftCell.cs
+++ b/Main/System/OSActivity/OSRankHeroCallGiftCell.cs
@@ -7,6 +7,7 @@
{
[SerializeField] ImageEx vipImage;
[SerializeField] TextEx vipText;
+ [SerializeField] OutlineEx vipTextOutline;
[SerializeField] ImageEx rateImage;
[SerializeField] TextEx rateText;
[SerializeField] Text nameText;
@@ -28,8 +29,16 @@
id -= 100000000;
var ctgConfig = CTGConfig.Get(id);
nameText.text = ctgConfig.Title;
+
vipImage.SetActive(ctgConfig.VipLevel > 0);
- vipText.text = ctgConfig.VipLevel > 0 ? Language.Get($"VipLevelInfo{ctgConfig.VipLevel}") : string.Empty;
+ if (ctgConfig.VipLevel > 0)
+ {
+ vipImage.SetSprite($"VipLevel{ctgConfig.VipLevel}");
+ vipText.text = Language.Get($"VipLevelInfo{ctgConfig.VipLevel}");
+ vipText.color = InvestModel.Instance.GetTextColor(ctgConfig.VipLevel);
+ vipTextOutline.OutlineColor = InvestModel.Instance.GetOutlineColor(ctgConfig.VipLevel);
+ }
+
rateImage.SetActive(true);
rateText.text = Language.Get("DailySpecials07", ctgConfig.Percentage);
for (int i = 0; i < itemCells.Length; i++)
diff --git a/Main/System/TimeRush/TimeRushGiftCell.cs b/Main/System/TimeRush/TimeRushGiftCell.cs
index 9fa7079..10944a6 100644
--- a/Main/System/TimeRush/TimeRushGiftCell.cs
+++ b/Main/System/TimeRush/TimeRushGiftCell.cs
@@ -5,6 +5,7 @@
{
[SerializeField] ImageEx vipImage;
[SerializeField] TextEx vipText;
+ [SerializeField] OutlineEx vipTextOutline;
[SerializeField] ImageEx rateImage;
[SerializeField] TextEx rateText;
[SerializeField] TextEx titleText;
@@ -51,8 +52,16 @@
return;
CTGConfig config = CTGConfig.Get(ctgId);
+
vipImage.SetActive(config.VipLevel > 0);
- vipText.text = config.VipLevel > 0 ? Language.Get($"VipLevelInfo{config.VipLevel}") : string.Empty;
+ if (config.VipLevel > 0)
+ {
+ vipImage.SetSprite($"VipLevel{config.VipLevel}");
+ vipText.text = Language.Get($"VipLevelInfo{config.VipLevel}");
+ vipText.color = InvestModel.Instance.GetTextColor(config.VipLevel);
+ vipTextOutline.OutlineColor = InvestModel.Instance.GetOutlineColor(config.VipLevel);
+ }
+
rateText.text = Language.Get("DailySpecials07", config.Percentage);
bool isCanBuy = manager.IsCanBuyCTG(ctgId);
diff --git a/Main/System/TimeRush/TimeRushManager.cs b/Main/System/TimeRush/TimeRushManager.cs
index c2fe788..d2cae6b 100644
--- a/Main/System/TimeRush/TimeRushManager.cs
+++ b/Main/System/TimeRush/TimeRushManager.cs
@@ -5,8 +5,6 @@
public class TimeRushManager : GameSystemManager<TimeRushManager>, IOpenServerActivity
{
-
-
public Action PlayAnimationSync;
private bool isPlayAnimation = false;
--
Gitblit v1.8.0