From e5889e8e468247097ed9f1e9b2a5ef9cb88c6569 Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期二, 21 四月 2026 19:30:24 +0800
Subject: [PATCH] 609 新增累充活动
---
Main/System/OSActivity/OperationTotalRechargeInfo.cs.meta | 11
Main/System/TotDayRecharge/TotDayRechargeCell.cs | 74 ++
Main/Config/Configs/ActTotDayRechargeTempConfig.cs.meta | 11
Main/Config/PartialConfigs/ActTotalRechargeTempConfig.cs.meta | 11
Main/Config/Configs/ActTotDayRechargeConfig.cs | 44 +
Main/System/TotDayRecharge/TotDayRechargeManager.cs.meta | 11
Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1D_tagSCActTotalRechargeInfo.cs.meta | 11
Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1C_tagSCActTotalRechargePlayerInfo.cs | 12
Main/System/OSActivity/OSGalaTabCell.cs | 32 +
Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1B_tagSCActTotDayRechargeInfo.cs | 23
Main/System/TotDayRecharge/TotDayRechargeCell.cs.meta | 11
Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1A_tagSCActTotDayRechargePlayerInfo.cs.meta | 11
Main/System/TotDayRecharge/TotDayRechargeWin.cs | 51 +
Main/System/TotalRecharge/TotalRechargeManager.cs | 252 +++++++
Main/Config/Configs/ActTotDayRechargeConfig.cs.meta | 11
Main/Utility/EnumHelper.cs | 2
Main/System/OSActivity/OSActivityManager.cs | 2
Main/System/TotDayRecharge/TotDayRechargeWin.cs.meta | 11
Main/System/TotalRecharge/TotalRechargeCell.cs.meta | 11
Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1B_tagSCActTotDayRechargeInfo.cs.meta | 11
Main/Config/PartialConfigs/ActTotalRechargeTempConfig.cs | 59 +
Main/System/TotDayRecharge.meta | 8
Main/System/OSActivity/OperationTotalRechargeInfo.cs | 21
Main/System/OSActivity/OperationTotDayRechargeInfo.cs.meta | 11
Main/System/OSActivity/OSGalaBaseWin.cs | 232 ++++++
Main/Config/Configs/ActTotalRechargeTempConfig.cs | 50 +
Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1D_tagSCActTotalRechargeInfo.cs.meta | 11
Main/System/OpenServerActivity/OperationTimeHepler.cs | 72 ++
Main/Config/PartialConfigs/ActTotDayRechargeTempConfig.cs.meta | 11
Main/Config/PartialConfigs/ActTotDayRechargeTempConfig.cs | 58 +
Main/System/TotalRecharge.meta | 8
Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1A_tagSCActTotDayRechargePlayerInfo.cs | 21
Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1D_tagSCActTotalRechargeInfo.cs | 14
Main/System/OSActivity/OSGalaTabCell.cs.meta | 11
Main/Config/ConfigManager.cs | 12
Main/System/OSActivity/OperationTotDayRechargeInfo.cs | 21
Main/System/TotalRecharge/TotalRechargeManager.cs.meta | 11
Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1C_tagSCActTotalRechargePlayerInfo.cs.meta | 11
Main/System/TotalRecharge/TotalRechargeWin.cs.meta | 11
Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1A_tagSCActTotDayRechargePlayerInfo.cs.meta | 11
Main/Config/Configs/ActTotDayRechargeTempConfig.cs | 47 +
Main/Config/Configs/ActTotalRechargeConfig.cs.meta | 11
Main/System/Main/HomeWin.cs | 13
Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1A_tagSCActTotDayRechargePlayerInfo.cs | 14
Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1B_tagSCActTotDayRechargeInfo.cs.meta | 11
Main/Main.cs | 3
Main/System/TotDayRecharge/TotDayRechargeManager.cs | 251 +++++++
Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1C_tagSCActTotalRechargePlayerInfo.cs.meta | 11
Main/System/TotalRecharge/TotalRechargeWin.cs | 51 +
Main/System/TotalRecharge/TotalRechargeCell.cs | 74 ++
Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1B_tagSCActTotDayRechargeInfo.cs | 12
Main/Config/Configs/ActTotalRechargeConfig.cs | 47 +
Main/Config/Configs/ActTotalRechargeTempConfig.cs.meta | 11
Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1D_tagSCActTotalRechargeInfo.cs | 23
Main/Core/NetworkPackage/DataToCtl/PackageRegedit.cs | 4
Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1C_tagSCActTotalRechargePlayerInfo.cs | 21
56 files changed, 1,868 insertions(+), 13 deletions(-)
diff --git a/Main/Config/ConfigManager.cs b/Main/Config/ConfigManager.cs
index 9c732d4..2852c9d 100644
--- a/Main/Config/ConfigManager.cs
+++ b/Main/Config/ConfigManager.cs
@@ -45,6 +45,10 @@
typeof(ActHeroReturnArtConfig),
typeof(ActLunhuidianTypeConfig),
typeof(ActSignAwardConfig),
+ typeof(ActTotalRechargeConfig),
+ typeof(ActTotalRechargeTempConfig),
+ typeof(ActTotDayRechargeConfig),
+ typeof(ActTotDayRechargeTempConfig),
typeof(ADAwardConfig),
typeof(BattleMapConfig),
typeof(BeautyConfig),
@@ -283,6 +287,14 @@
ClearConfigDictionary<ActLunhuidianTypeConfig>();
// 娓呯┖ ActSignAwardConfig 瀛楀吀
ClearConfigDictionary<ActSignAwardConfig>();
+ // 娓呯┖ ActTotalRechargeConfig 瀛楀吀
+ ClearConfigDictionary<ActTotalRechargeConfig>();
+ // 娓呯┖ ActTotalRechargeTempConfig 瀛楀吀
+ ClearConfigDictionary<ActTotalRechargeTempConfig>();
+ // 娓呯┖ ActTotDayRechargeConfig 瀛楀吀
+ ClearConfigDictionary<ActTotDayRechargeConfig>();
+ // 娓呯┖ ActTotDayRechargeTempConfig 瀛楀吀
+ ClearConfigDictionary<ActTotDayRechargeTempConfig>();
// 娓呯┖ ADAwardConfig 瀛楀吀
ClearConfigDictionary<ADAwardConfig>();
// 娓呯┖ BattleMapConfig 瀛楀吀
diff --git a/Main/Config/Configs/ActTotDayRechargeConfig.cs b/Main/Config/Configs/ActTotDayRechargeConfig.cs
new file mode 100644
index 0000000..2ab126e
--- /dev/null
+++ b/Main/Config/Configs/ActTotDayRechargeConfig.cs
@@ -0,0 +1,44 @@
+锘�//--------------------------------------------------------
+// [Author]: YYL
+// [ Date ]: 2026骞�4鏈�20鏃�
+//--------------------------------------------------------
+
+using System.Collections.Generic;
+using System;
+using UnityEngine;
+using LitJson;
+
+public partial class ActTotDayRechargeConfig : ConfigBase<int, ActTotDayRechargeConfig>
+{
+ static ActTotDayRechargeConfig()
+ {
+ // 璁块棶杩囬潤鎬佹瀯閫犲嚱鏁�
+ visit = true;
+ }
+
+ public int CfgID;
+ public int TemplateID;
+ public int ActShopType;
+
+ public override int LoadKey(string _key)
+ {
+ int key = GetKey(_key);
+ return key;
+ }
+
+ public override void LoadConfig(string input)
+ {
+ try {
+ string[] tables = input.Split('\t');
+ int.TryParse(tables[0],out CfgID);
+
+ int.TryParse(tables[1],out TemplateID);
+
+ int.TryParse(tables[2],out ActShopType);
+ }
+ catch (Exception exception)
+ {
+ Debug.LogError(exception);
+ }
+ }
+}
diff --git a/Main/Config/Configs/ActTotDayRechargeConfig.cs.meta b/Main/Config/Configs/ActTotDayRechargeConfig.cs.meta
new file mode 100644
index 0000000..1618988
--- /dev/null
+++ b/Main/Config/Configs/ActTotDayRechargeConfig.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 76b774172f2c1ec41852272287e4b25c
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/Config/Configs/ActTotDayRechargeTempConfig.cs b/Main/Config/Configs/ActTotDayRechargeTempConfig.cs
new file mode 100644
index 0000000..29d5cc7
--- /dev/null
+++ b/Main/Config/Configs/ActTotDayRechargeTempConfig.cs
@@ -0,0 +1,47 @@
+锘�//--------------------------------------------------------
+// [Author]: YYL
+// [ Date ]: 2026骞�4鏈�20鏃�
+//--------------------------------------------------------
+
+using System.Collections.Generic;
+using System;
+using UnityEngine;
+using LitJson;
+
+public partial class ActTotDayRechargeTempConfig : ConfigBase<int, ActTotDayRechargeTempConfig>
+{
+ static ActTotDayRechargeTempConfig()
+ {
+ // 璁块棶杩囬潤鎬佹瀯閫犲嚱鏁�
+ visit = true;
+ }
+
+ public int AwardID;
+ public int TemplateID;
+ public int NeedDay;
+ public int[][] AwardItemList;
+
+ public override int LoadKey(string _key)
+ {
+ int key = GetKey(_key);
+ return key;
+ }
+
+ public override void LoadConfig(string input)
+ {
+ try {
+ string[] tables = input.Split('\t');
+ int.TryParse(tables[0],out AwardID);
+
+ int.TryParse(tables[1],out TemplateID);
+
+ int.TryParse(tables[2],out NeedDay);
+
+ AwardItemList = JsonMapper.ToObject<int[][]>(tables[3].Replace("(", "[").Replace(")", "]"));
+ }
+ catch (Exception exception)
+ {
+ Debug.LogError(exception);
+ }
+ }
+}
diff --git a/Main/Config/Configs/ActTotDayRechargeTempConfig.cs.meta b/Main/Config/Configs/ActTotDayRechargeTempConfig.cs.meta
new file mode 100644
index 0000000..c92212a
--- /dev/null
+++ b/Main/Config/Configs/ActTotDayRechargeTempConfig.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: b6d7d5571b6413f489eb78b5fe653a5f
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/Config/Configs/ActTotalRechargeConfig.cs b/Main/Config/Configs/ActTotalRechargeConfig.cs
new file mode 100644
index 0000000..03e5cff
--- /dev/null
+++ b/Main/Config/Configs/ActTotalRechargeConfig.cs
@@ -0,0 +1,47 @@
+锘�//--------------------------------------------------------
+// [Author]: YYL
+// [ Date ]: 2026骞�4鏈�20鏃�
+//--------------------------------------------------------
+
+using System.Collections.Generic;
+using System;
+using UnityEngine;
+using LitJson;
+
+public partial class ActTotalRechargeConfig : ConfigBase<int, ActTotalRechargeConfig>
+{
+ static ActTotalRechargeConfig()
+ {
+ // 璁块棶杩囬潤鎬佹瀯閫犲嚱鏁�
+ visit = true;
+ }
+
+ public int CfgID;
+ public int IsDayReset;
+ public int CTGTempID;
+ public int CTGShopType;
+
+ public override int LoadKey(string _key)
+ {
+ int key = GetKey(_key);
+ return key;
+ }
+
+ public override void LoadConfig(string input)
+ {
+ try {
+ string[] tables = input.Split('\t');
+ int.TryParse(tables[0],out CfgID);
+
+ int.TryParse(tables[1],out IsDayReset);
+
+ int.TryParse(tables[2],out CTGTempID);
+
+ int.TryParse(tables[3],out CTGShopType);
+ }
+ catch (Exception exception)
+ {
+ Debug.LogError(exception);
+ }
+ }
+}
diff --git a/Main/Config/Configs/ActTotalRechargeConfig.cs.meta b/Main/Config/Configs/ActTotalRechargeConfig.cs.meta
new file mode 100644
index 0000000..af9d069
--- /dev/null
+++ b/Main/Config/Configs/ActTotalRechargeConfig.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: a27d596fa4a6e284c90afe1cb0e50d5b
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/Config/Configs/ActTotalRechargeTempConfig.cs b/Main/Config/Configs/ActTotalRechargeTempConfig.cs
new file mode 100644
index 0000000..520f4c4
--- /dev/null
+++ b/Main/Config/Configs/ActTotalRechargeTempConfig.cs
@@ -0,0 +1,50 @@
+锘�//--------------------------------------------------------
+// [Author]: YYL
+// [ Date ]: 2026骞�4鏈�20鏃�
+//--------------------------------------------------------
+
+using System.Collections.Generic;
+using System;
+using UnityEngine;
+using LitJson;
+
+public partial class ActTotalRechargeTempConfig : ConfigBase<int, ActTotalRechargeTempConfig>
+{
+ static ActTotalRechargeTempConfig()
+ {
+ // 璁块棶杩囬潤鎬佹瀯閫犲嚱鏁�
+ visit = true;
+ }
+
+ public int AwardID;
+ public int TemplateID;
+ public float NeedAmount;
+ public int AwardIndex;
+ public int[][] AwardItemList;
+
+ public override int LoadKey(string _key)
+ {
+ int key = GetKey(_key);
+ return key;
+ }
+
+ public override void LoadConfig(string input)
+ {
+ try {
+ string[] tables = input.Split('\t');
+ int.TryParse(tables[0],out AwardID);
+
+ int.TryParse(tables[1],out TemplateID);
+
+ float.TryParse(tables[2],out NeedAmount);
+
+ int.TryParse(tables[3],out AwardIndex);
+
+ AwardItemList = JsonMapper.ToObject<int[][]>(tables[4].Replace("(", "[").Replace(")", "]"));
+ }
+ catch (Exception exception)
+ {
+ Debug.LogError(exception);
+ }
+ }
+}
diff --git a/Main/Config/Configs/ActTotalRechargeTempConfig.cs.meta b/Main/Config/Configs/ActTotalRechargeTempConfig.cs.meta
new file mode 100644
index 0000000..6c66a76
--- /dev/null
+++ b/Main/Config/Configs/ActTotalRechargeTempConfig.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: f90ea937d9f96a549a3f2f9c9ce1c59b
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/Config/PartialConfigs/ActTotDayRechargeTempConfig.cs b/Main/Config/PartialConfigs/ActTotDayRechargeTempConfig.cs
new file mode 100644
index 0000000..825dceb
--- /dev/null
+++ b/Main/Config/PartialConfigs/ActTotDayRechargeTempConfig.cs
@@ -0,0 +1,58 @@
+using System.Collections.Generic;
+
+public partial class ActTotDayRechargeTempConfig : ConfigBase<int, ActTotDayRechargeTempConfig>
+{
+ // 妯℃澘缂栧彿: 鎵�闇�绱厖澶� :濂栧姳ID
+ private static Dictionary<int, Dictionary<int, int>> infoDict = new Dictionary<int, Dictionary<int, int>>();
+ // 妯℃澘缂栧彿 鎵�闇�绱厖澶�
+ private static Dictionary<int, List<int>> sortDict = new Dictionary<int, List<int>>();
+ protected override void OnConfigParseCompleted()
+ {
+ if (!infoDict.TryGetValue(TemplateID, out var dict))
+ {
+ dict = new Dictionary<int, int>();
+ infoDict[TemplateID] = dict;
+ }
+ dict[NeedDay] = AwardID;
+ }
+
+ private static void LoadSortList()
+ {
+ if (!sortDict.IsNullOrEmpty()) return;
+ foreach (var kvp in infoDict)
+ {
+ int templateID = kvp.Key;
+ List<int> list = new List<int>(kvp.Value.Keys);
+ list.Sort();
+ sortDict[templateID] = list;
+ }
+ }
+
+ public static List<int> GetNeedDaySortList(int templateID)
+ {
+ LoadSortList();
+ sortDict.TryGetValue(templateID, out var list);
+ return list;
+ }
+
+ public static Dictionary<int, int> GetTemplateIDDict(int templateID)
+ {
+ infoDict.TryGetValue(templateID, out var dict);
+ return dict;
+ }
+
+ public static int GetID(int templateID, int needDay)
+ {
+ var dict = GetTemplateIDDict(templateID);
+ if (dict == null) return 0;
+
+ dict.TryGetValue(needDay, out var id);
+ return id;
+ }
+
+ public static ActTotDayRechargeTempConfig GetConfig(int templateID, int needDay)
+ {
+ int id = GetID(templateID, needDay);
+ return Get(id);
+ }
+}
\ No newline at end of file
diff --git a/Main/Config/PartialConfigs/ActTotDayRechargeTempConfig.cs.meta b/Main/Config/PartialConfigs/ActTotDayRechargeTempConfig.cs.meta
new file mode 100644
index 0000000..c6fa559
--- /dev/null
+++ b/Main/Config/PartialConfigs/ActTotDayRechargeTempConfig.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 200643bb4766ae74fbb865f9583a43e0
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/Config/PartialConfigs/ActTotalRechargeTempConfig.cs b/Main/Config/PartialConfigs/ActTotalRechargeTempConfig.cs
new file mode 100644
index 0000000..1c36c9e
--- /dev/null
+++ b/Main/Config/PartialConfigs/ActTotalRechargeTempConfig.cs
@@ -0,0 +1,59 @@
+using System.Collections.Generic;
+
+public partial class ActTotalRechargeTempConfig : ConfigBase<int, ActTotalRechargeTempConfig>
+{
+ // 妯℃澘缂栧彿: 濂栧姳绱㈠紩 :濂栧姳ID
+ private static Dictionary<int, Dictionary<int, int>> infoDict = new Dictionary<int, Dictionary<int, int>>();
+ // 妯℃澘缂栧彿 濂栧姳绱㈠紩
+ private static Dictionary<int, List<int>> sortDict = new Dictionary<int, List<int>>();
+ protected override void OnConfigParseCompleted()
+ {
+ if (!infoDict.TryGetValue(TemplateID, out var dict))
+ {
+ dict = new Dictionary<int, int>();
+ infoDict[TemplateID] = dict;
+ }
+ dict[AwardIndex] = AwardID;
+ }
+
+ private static void LoadSortList()
+ {
+ if (!sortDict.IsNullOrEmpty()) return;
+ foreach (var kvp in infoDict)
+ {
+ int templateID = kvp.Key;
+ List<int> list = new List<int>(kvp.Value.Keys);
+ list.Sort();
+ sortDict[templateID] = list;
+ }
+ }
+
+ public static List<int> GetAwardIndexSortList(int templateID)
+ {
+ LoadSortList();
+ sortDict.TryGetValue(templateID, out var list);
+ return list;
+ }
+
+ public static Dictionary<int, int> GetTemplateIDDict(int templateID)
+ {
+ infoDict.TryGetValue(templateID, out var dict);
+ return dict;
+ }
+
+ public static int GetID(int templateID, int awardIndex)
+ {
+ var dict = GetTemplateIDDict(templateID);
+ if (dict == null) return 0;
+
+ dict.TryGetValue(awardIndex, out var id);
+ return id;
+ }
+
+ public static ActTotalRechargeTempConfig GetConfig(int templateID, int awardIndex)
+ {
+ int id = GetID(templateID, awardIndex);
+ return Get(id);
+ }
+
+}
\ No newline at end of file
diff --git a/Main/Config/PartialConfigs/ActTotalRechargeTempConfig.cs.meta b/Main/Config/PartialConfigs/ActTotalRechargeTempConfig.cs.meta
new file mode 100644
index 0000000..fd9d204
--- /dev/null
+++ b/Main/Config/PartialConfigs/ActTotalRechargeTempConfig.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: c6b8fcbcc60e80f459e9b25121ff4f34
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1A_tagSCActTotDayRechargePlayerInfo.cs b/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1A_tagSCActTotDayRechargePlayerInfo.cs
new file mode 100644
index 0000000..58c7e01
--- /dev/null
+++ b/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1A_tagSCActTotDayRechargePlayerInfo.cs
@@ -0,0 +1,14 @@
+using UnityEngine;
+using System.Collections;
+
+// AA 1A 绱厖澶╂椿鍔ㄧ帺瀹朵俊鎭� #tagSCActTotDayRechargePlayerInfo
+
+public class DTCAA1A_tagSCActTotDayRechargePlayerInfo : DtcBasic
+{
+ public override void Done(GameNetPackBasic vNetPack)
+ {
+ base.Done(vNetPack);
+ HAA1A_tagSCActTotDayRechargePlayerInfo vNetData = vNetPack as HAA1A_tagSCActTotDayRechargePlayerInfo;
+ TotDayRechargeManager.Instance.UpdateTotDayRechargePlayerInfo(vNetData);
+ }
+}
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1A_tagSCActTotDayRechargePlayerInfo.cs.meta b/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1A_tagSCActTotDayRechargePlayerInfo.cs.meta
new file mode 100644
index 0000000..8001d55
--- /dev/null
+++ b/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1A_tagSCActTotDayRechargePlayerInfo.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: ff910fd4544f88147a8ac9ebe5d54a6c
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1B_tagSCActTotDayRechargeInfo.cs b/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1B_tagSCActTotDayRechargeInfo.cs
new file mode 100644
index 0000000..0d452f5
--- /dev/null
+++ b/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1B_tagSCActTotDayRechargeInfo.cs
@@ -0,0 +1,12 @@
+using UnityEngine;
+using System.Collections;
+
+// AA 1B 绱厖澶╂椿鍔ㄤ俊鎭� #tagSCActTotDayRechargeInfo
+
+public class DTCAA1B_tagSCActTotDayRechargeInfo : DtcBasic {
+ public override void Done(GameNetPackBasic vNetPack) {
+ base.Done(vNetPack);
+ HAA1B_tagSCActTotDayRechargeInfo vNetData = vNetPack as HAA1B_tagSCActTotDayRechargeInfo;
+ OperationTimeHepler.Instance.UpdateActTotDayRechargeInfo(vNetData);
+ }
+}
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1B_tagSCActTotDayRechargeInfo.cs.meta b/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1B_tagSCActTotDayRechargeInfo.cs.meta
new file mode 100644
index 0000000..60e3430
--- /dev/null
+++ b/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1B_tagSCActTotDayRechargeInfo.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 2ab40d2df9df70846b324d89389c5fb7
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1C_tagSCActTotalRechargePlayerInfo.cs b/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1C_tagSCActTotalRechargePlayerInfo.cs
new file mode 100644
index 0000000..15cb47b
--- /dev/null
+++ b/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1C_tagSCActTotalRechargePlayerInfo.cs
@@ -0,0 +1,12 @@
+using UnityEngine;
+using System.Collections;
+
+// AA 1C 绱厖娲诲姩鐜╁淇℃伅 #tagSCActTotalRechargePlayerInfo
+
+public class DTCAA1C_tagSCActTotalRechargePlayerInfo : DtcBasic {
+ public override void Done(GameNetPackBasic vNetPack) {
+ base.Done(vNetPack);
+ HAA1C_tagSCActTotalRechargePlayerInfo vNetData = vNetPack as HAA1C_tagSCActTotalRechargePlayerInfo;
+ TotalRechargeManager.Instance.UpdateTotalRechargePlayerInfo(vNetData);
+ }
+}
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1C_tagSCActTotalRechargePlayerInfo.cs.meta b/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1C_tagSCActTotalRechargePlayerInfo.cs.meta
new file mode 100644
index 0000000..b3e6cd0
--- /dev/null
+++ b/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1C_tagSCActTotalRechargePlayerInfo.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 8bf165379885e0a4685dd17c772c34c2
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1D_tagSCActTotalRechargeInfo.cs b/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1D_tagSCActTotalRechargeInfo.cs
new file mode 100644
index 0000000..779c964
--- /dev/null
+++ b/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1D_tagSCActTotalRechargeInfo.cs
@@ -0,0 +1,14 @@
+using UnityEngine;
+using System.Collections;
+
+// AA 1D 绱厖娲诲姩淇℃伅 #tagSCActTotalRechargeInfo
+
+public class DTCAA1D_tagSCActTotalRechargeInfo : DtcBasic
+{
+ public override void Done(GameNetPackBasic vNetPack)
+ {
+ base.Done(vNetPack);
+ HAA1D_tagSCActTotalRechargeInfo vNetData = vNetPack as HAA1D_tagSCActTotalRechargeInfo;
+ OperationTimeHepler.Instance.UpdateActTotalRechargeInfo(vNetData);
+ }
+}
diff --git a/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1D_tagSCActTotalRechargeInfo.cs.meta b/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1D_tagSCActTotalRechargeInfo.cs.meta
new file mode 100644
index 0000000..aab4fce
--- /dev/null
+++ b/Main/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA1D_tagSCActTotalRechargeInfo.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: a9b1c15e1cc65e940a9e3c967001c7cd
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/Core/NetworkPackage/DataToCtl/PackageRegedit.cs b/Main/Core/NetworkPackage/DataToCtl/PackageRegedit.cs
index 2fdaf6a..270cccc 100644
--- a/Main/Core/NetworkPackage/DataToCtl/PackageRegedit.cs
+++ b/Main/Core/NetworkPackage/DataToCtl/PackageRegedit.cs
@@ -163,6 +163,10 @@
Register(typeof(HA925_tagSCQunyingPlayerInfo), typeof(DTCA925_tagSCQunyingPlayerInfo));
Register(typeof(HC010_tagSCCrossZoneInfo), typeof(DTCC010_tagSCCrossZoneInfo));
Register(typeof(HA305_tagSCHorseIDInfo), typeof(DTCA305_tagSCHorseIDInfo));
+ Register(typeof(HAA1A_tagSCActTotDayRechargePlayerInfo), typeof(DTCAA1A_tagSCActTotDayRechargePlayerInfo));
+ Register(typeof(HAA1B_tagSCActTotDayRechargeInfo), typeof(DTCAA1B_tagSCActTotDayRechargeInfo));
+ Register(typeof(HAA1C_tagSCActTotalRechargePlayerInfo), typeof(DTCAA1C_tagSCActTotalRechargePlayerInfo));
+ Register(typeof(HAA1D_tagSCActTotalRechargeInfo), typeof(DTCAA1D_tagSCActTotalRechargeInfo));
}
//涓诲伐绋嬫敞鍐屽皝鍖�
diff --git a/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1A_tagSCActTotDayRechargePlayerInfo.cs b/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1A_tagSCActTotDayRechargePlayerInfo.cs
new file mode 100644
index 0000000..bae4046
--- /dev/null
+++ b/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1A_tagSCActTotDayRechargePlayerInfo.cs
@@ -0,0 +1,21 @@
+using UnityEngine;
+using System.Collections;
+
+// AA 1A 绱厖澶╂椿鍔ㄧ帺瀹朵俊鎭� #tagSCActTotDayRechargePlayerInfo
+
+public class HAA1A_tagSCActTotDayRechargePlayerInfo : GameNetPackBasic {
+ public byte ActNum; //娲诲姩缂栧彿
+ public byte TotalDays; //娲诲姩绱厖澶╂暟
+ public uint AwardRecord; //绱厖澶╁鍔遍濂栬褰曪紝鎸夊ぉ浜岃繘鍒朵綅瀛樺偍鏄惁宸查鍙�
+
+ public HAA1A_tagSCActTotDayRechargePlayerInfo () {
+ _cmd = (ushort)0xAA1A;
+ }
+
+ public override void ReadFromBytes (byte[] vBytes) {
+ TransBytes (out ActNum, vBytes, NetDataType.BYTE);
+ TransBytes (out TotalDays, vBytes, NetDataType.BYTE);
+ TransBytes (out AwardRecord, vBytes, NetDataType.DWORD);
+ }
+
+}
diff --git a/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1A_tagSCActTotDayRechargePlayerInfo.cs.meta b/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1A_tagSCActTotDayRechargePlayerInfo.cs.meta
new file mode 100644
index 0000000..e95cb46
--- /dev/null
+++ b/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1A_tagSCActTotDayRechargePlayerInfo.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: d69e237c7851de84ab85e666d561e809
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1B_tagSCActTotDayRechargeInfo.cs b/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1B_tagSCActTotDayRechargeInfo.cs
new file mode 100644
index 0000000..2eb3f93
--- /dev/null
+++ b/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1B_tagSCActTotDayRechargeInfo.cs
@@ -0,0 +1,23 @@
+using UnityEngine;
+using System.Collections;
+
+// AA 1B 绱厖澶╂椿鍔ㄤ俊鎭� #tagSCActTotDayRechargeInfo
+
+public class HAA1B_tagSCActTotDayRechargeInfo : GameNetPackBasic {
+ public byte ActNum; // 娲诲姩缂栧彿
+ public string StartDate; // 寮�濮嬫棩鏈� y-m-d
+ public string EndtDate; // 缁撴潫鏃ユ湡 y-m-d
+ public ushort CfgID; // 娲诲姩鏃堕棿琛ㄩ厤缃甀D
+
+ public HAA1B_tagSCActTotDayRechargeInfo () {
+ _cmd = (ushort)0xAA1B;
+ }
+
+ public override void ReadFromBytes (byte[] vBytes) {
+ TransBytes (out ActNum, vBytes, NetDataType.BYTE);
+ TransBytes (out StartDate, vBytes, NetDataType.Chars, 10);
+ TransBytes (out EndtDate, vBytes, NetDataType.Chars, 10);
+ TransBytes (out CfgID, vBytes, NetDataType.WORD);
+ }
+
+}
diff --git a/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1B_tagSCActTotDayRechargeInfo.cs.meta b/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1B_tagSCActTotDayRechargeInfo.cs.meta
new file mode 100644
index 0000000..37561d1
--- /dev/null
+++ b/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1B_tagSCActTotDayRechargeInfo.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 98ba7407ed7fd9e4eac77a6e39e53bce
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1C_tagSCActTotalRechargePlayerInfo.cs b/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1C_tagSCActTotalRechargePlayerInfo.cs
new file mode 100644
index 0000000..e9e5af8
--- /dev/null
+++ b/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1C_tagSCActTotalRechargePlayerInfo.cs
@@ -0,0 +1,21 @@
+using UnityEngine;
+using System.Collections;
+
+// AA 1C 绱厖娲诲姩鐜╁淇℃伅 #tagSCActTotalRechargePlayerInfo
+
+public class HAA1C_tagSCActTotalRechargePlayerInfo : GameNetPackBasic {
+ public byte ActNum; //娲诲姩缂栧彿
+ public uint CoinTotal; //娲诲姩绱鍏呭�奸coin鍊�
+ public uint AwardRecord; //绱厖濂栧姳棰嗗璁板綍锛屾寜濂栧姳绱㈠紩浜岃繘鍒朵綅瀛樺偍鏄惁宸查鍙�
+
+ public HAA1C_tagSCActTotalRechargePlayerInfo () {
+ _cmd = (ushort)0xAA1C;
+ }
+
+ public override void ReadFromBytes (byte[] vBytes) {
+ TransBytes (out ActNum, vBytes, NetDataType.BYTE);
+ TransBytes (out CoinTotal, vBytes, NetDataType.DWORD);
+ TransBytes (out AwardRecord, vBytes, NetDataType.DWORD);
+ }
+
+}
diff --git a/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1C_tagSCActTotalRechargePlayerInfo.cs.meta b/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1C_tagSCActTotalRechargePlayerInfo.cs.meta
new file mode 100644
index 0000000..f24772e
--- /dev/null
+++ b/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1C_tagSCActTotalRechargePlayerInfo.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 041f64014b18e6340be4b4c2f63f2a8d
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1D_tagSCActTotalRechargeInfo.cs b/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1D_tagSCActTotalRechargeInfo.cs
new file mode 100644
index 0000000..87d4722
--- /dev/null
+++ b/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1D_tagSCActTotalRechargeInfo.cs
@@ -0,0 +1,23 @@
+using UnityEngine;
+using System.Collections;
+
+// AA 1D 绱厖娲诲姩淇℃伅 #tagSCActTotalRechargeInfo
+
+public class HAA1D_tagSCActTotalRechargeInfo : GameNetPackBasic {
+ public byte ActNum; // 娲诲姩缂栧彿
+ public string StartDate; // 寮�濮嬫棩鏈� y-m-d
+ public string EndtDate; // 缁撴潫鏃ユ湡 y-m-d
+ public ushort CfgID; // 娲诲姩鏃堕棿琛ㄩ厤缃甀D
+
+ public HAA1D_tagSCActTotalRechargeInfo () {
+ _cmd = (ushort)0xAA1D;
+ }
+
+ public override void ReadFromBytes (byte[] vBytes) {
+ TransBytes (out ActNum, vBytes, NetDataType.BYTE);
+ TransBytes (out StartDate, vBytes, NetDataType.Chars, 10);
+ TransBytes (out EndtDate, vBytes, NetDataType.Chars, 10);
+ TransBytes (out CfgID, vBytes, NetDataType.WORD);
+ }
+
+}
diff --git a/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1D_tagSCActTotalRechargeInfo.cs.meta b/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1D_tagSCActTotalRechargeInfo.cs.meta
new file mode 100644
index 0000000..75b10b3
--- /dev/null
+++ b/Main/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA1D_tagSCActTotalRechargeInfo.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 8e1a6e96357ef3e4e91707b9a141f552
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/Main.cs b/Main/Main.cs
index 7b4ad88..a8e0fc9 100644
--- a/Main/Main.cs
+++ b/Main/Main.cs
@@ -114,6 +114,9 @@
managers.Add(ViewBuffManager.Instance);
managers.Add(HeroReturnManager.Instance);
managers.Add(CrossServerBaseManager.Instance);
+ managers.Add(TotalRechargeManager.Instance);
+ managers.Add(TotDayRechargeManager.Instance);
+
foreach (var manager in managers)
{
diff --git a/Main/System/Main/HomeWin.cs b/Main/System/Main/HomeWin.cs
index d0abef8..076820e 100644
--- a/Main/System/Main/HomeWin.cs
+++ b/Main/System/Main/HomeWin.cs
@@ -342,7 +342,10 @@
{
DisplayHeroReturn();
}
-
+ else if (type == OperationType.TotalRecharge || type == OperationType.TotDayRecharge)
+ {
+ DisplayGalaBtn();
+ }
}
private void OpenServerActivityStateChange()
@@ -350,6 +353,7 @@
DisplayTimeRush();
DisplayHeroDebut();
DisplayHeroReturn();
+ DisplayGalaBtn();
}
private void OnShowGiftIdListAddEvent()
@@ -915,7 +919,7 @@
osHeroTrainBtn.SetActive(OSActivityManager.Instance.IsOpened(7));
osBeautyMMBtn.SetActive(OSActivityManager.Instance.IsOpened(8));
osMinggeBtn.SetActive(OSActivityManager.Instance.IsOpened(9));
- osGalaBtn.SetActive(OSActivityManager.Instance.IsOpenedOSGala());
+ DisplayGalaBtn();
}
void OnDayEvent()
@@ -923,6 +927,11 @@
DisplayOSActivity();
}
+ void DisplayGalaBtn()
+ {
+ bool isGalaOpen = TotDayRechargeManager.Instance.IsOpen || TotalRechargeManager.Instance.IsOpen;
+ osGalaBtn.SetActive(OSActivityManager.Instance.IsOpenedOSGala() || isGalaOpen);
+ }
void DisplayTimeRush()
{
diff --git a/Main/System/OSActivity/OSActivityManager.cs b/Main/System/OSActivity/OSActivityManager.cs
index c2ca0a3..56002d0 100644
--- a/Main/System/OSActivity/OSActivityManager.cs
+++ b/Main/System/OSActivity/OSActivityManager.cs
@@ -232,7 +232,7 @@
public void UpdateRedpoint()
{
osMainLevelRedpoint.state = !DayRemind.Instance.GetDayRemind(DayRemind.OSMainLevel) ? RedPointState.Simple : RedPointState.None;
- osGalaRedpoint2.state = !DayRemind.Instance.GetDayRemind(DayRemind.OSGalaChange) ? RedPointState.Simple : RedPointState.None;
+ osGalaRedpoint2.state = IsOpenedOSGala() && !DayRemind.Instance.GetDayRemind(DayRemind.OSGalaChange) ? RedPointState.Simple : RedPointState.None;
osHeroTrainRedpoint.state = !DayRemind.Instance.GetDayRemind(DayRemind.OSMainLevel) ? RedPointState.Simple : RedPointState.None;
osBeautyMMRedpoint.state = !DayRemind.Instance.GetDayRemind(DayRemind.OSMainLevel) ? RedPointState.Simple : RedPointState.None;
osMinggeRedpoint.state = !DayRemind.Instance.GetDayRemind(DayRemind.OSMainLevel) ? RedPointState.Simple : RedPointState.None;
diff --git a/Main/System/OSActivity/OSGalaBaseWin.cs b/Main/System/OSActivity/OSGalaBaseWin.cs
index 1482eec..90e5b32 100644
--- a/Main/System/OSActivity/OSGalaBaseWin.cs
+++ b/Main/System/OSActivity/OSGalaBaseWin.cs
@@ -4,6 +4,7 @@
//--------------------------------------------------------
+using System;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
@@ -11,36 +12,170 @@
////寮�鏈嶇洓鍏�
-public class OSGalaBaseWin : FunctionsBaseWin
+public class OSGalaBaseWin : UIBase
{
+ [SerializeField] Transform moneyTrans2;
+ [SerializeField] Transform galaTrans;
+ [SerializeField] ScrollerController tabScroller;
[SerializeField] Image processImg;
- [SerializeField] Text timeText;
+ [SerializeField] Text galaTimeText;
[SerializeField] Text totalScoreText;
[SerializeField] ItemCell[] itemCells;
[SerializeField] Image[] gotImgs;
[SerializeField] Text[] scoreTexts;
[SerializeField] UIEffectPlayer[] effectPlayers;
+ [SerializeField] Transform totalRechargeTrans;
+ [SerializeField] Text totalRechargeTimeText;
+ [SerializeField] ItemCell totalRechargeItemCell;
+ [SerializeField] Text totalRechargeScoreText;
+ [SerializeField] RotationTween totalRechargeRotationTween;
+ [SerializeField] Image totalRechargeFreeRedImage;
+ [SerializeField] Image totalRechargeHaveImage;
+
+ [SerializeField] Transform totDayRechargeTrans;
+ [SerializeField] Text totDayRechargeTimeText;
+ [SerializeField] ItemCell totDayRechargeItemCell;
+ [SerializeField] Text totDayRechargeScoreText;
+ [SerializeField] RotationTween totDayRechargeRotationTween;
+ [SerializeField] Image totDayRechargeFreeRedImage;
+ [SerializeField] Image totDayRechargeHaveImage;
+
+ private int nowTabId = 0;
+ private UIBase currentSubUI;
+ private List<int> tabIdList = new List<int> { 0, 1, 2, 3, 4 };
+ private Dictionary<int, string> tabTitleKeys = new Dictionary<int, string>
+ {
+ { 0, "DayMission1" },
+ { 1, "OSActivity9" },
+ { 2, "OSActivity3" },
+ { 3, "TotalRecharge04" },
+ { 4, "TotalRecharge05" },
+ };
+ private Dictionary<int, int> tabRedpointKeys = new Dictionary<int, int>
+ {
+ { 0, 1131 },
+ { 1, 1132 },
+ { 2, 1133 },
+ { 3, 1135 },
+ { 4, 1136 },
+ };
protected override void OnPreOpen()
{
- base.OnPreOpen();
+ tabScroller.OnRefreshCell += OnRefreshTabCell;
OSActivityManager.Instance.OnOSGalaDataChangeEvent += OnOSGalaDataChangeEvent;
GlobalTimeEvent.Instance.secondEvent += ShowTime;
+ StoreModel.Instance.RefreshBuyShopLimitEvent += OnRefreshBuyShopLimitEvent;
+ TotalRechargeManager.Instance.OnTotalRechargePlayerInfoEvent += OnTotalRechargePlayerInfoEvent;
+ TotDayRechargeManager.Instance.OnTotDayRechargePlayerInfoEvent += OnTotDayRechargePlayerInfoEvent;
+ CreateTabScroller();
Display();
}
protected override void OnPreClose()
{
- base.OnPreClose();
+ tabScroller.OnRefreshCell -= OnRefreshTabCell;
OSActivityManager.Instance.OnOSGalaDataChangeEvent -= OnOSGalaDataChangeEvent;
GlobalTimeEvent.Instance.secondEvent -= ShowTime;
+ StoreModel.Instance.RefreshBuyShopLimitEvent -= OnRefreshBuyShopLimitEvent;
+ TotalRechargeManager.Instance.OnTotalRechargePlayerInfoEvent -= OnTotalRechargePlayerInfoEvent;
+ TotDayRechargeManager.Instance.OnTotDayRechargePlayerInfoEvent -= OnTotDayRechargePlayerInfoEvent;
+ CloseCurrentSubUI();
}
-
- protected override void OpenSubUIByTabIndex()
+ private void OnTotDayRechargePlayerInfoEvent()
{
- switch (functionOrder)
+ tabScroller.m_Scorller.RefreshActiveCellViews();
+ SelectBottomTab(nowTabId);
+ Display();
+ }
+
+ private void OnTotalRechargePlayerInfoEvent()
+ {
+ tabScroller.m_Scorller.RefreshActiveCellViews();
+ SelectBottomTab(nowTabId);
+ Display();
+ }
+
+ private void OnRefreshBuyShopLimitEvent()
+ {
+ tabScroller.m_Scorller.RefreshActiveCellViews();
+ SelectBottomTab(nowTabId);
+ Display();
+ }
+
+ private void CreateTabScroller()
+ {
+ tabScroller.Refresh();
+ bool isOSGalaOpen = OSActivityManager.Instance.IsOpenedOSGala();
+ bool isTotDayRechargeOpen = TotDayRechargeManager.Instance.IsOpen;
+ bool isTotalRechargeOpen = TotalRechargeManager.Instance.IsOpen;
+ List<int> visibleTabs = new List<int>();
+ for (int i = 0; i < tabIdList.Count; i++)
+ {
+ int tabId = tabIdList[i];
+ bool canShow = false;
+ if (tabId == 0 || tabId == 1 || tabId == 2)
+ {
+ canShow = isOSGalaOpen;
+ }
+ else if (tabId == 3)
+ {
+ canShow = isTotalRechargeOpen;
+ }
+ else if (tabId == 4)
+ {
+ canShow = isTotDayRechargeOpen;
+ }
+ if (canShow)
+ {
+ visibleTabs.Add(tabId);
+ tabScroller.AddCell(ScrollerDataType.Header, tabId);
+ }
+ }
+ if (visibleTabs.Count > 0)
+ {
+ nowTabId = visibleTabs[0];
+ }
+ tabScroller.Restart();
+ SelectBottomTab(nowTabId);
+ }
+
+ private void OnRefreshTabCell(ScrollerDataType type, CellView cell)
+ {
+ var _cell = cell.GetComponent<OSGalaTabCell>();
+ string titleKey = tabTitleKeys.ContainsKey(cell.index) ? tabTitleKeys[cell.index] : "";
+ int redpointId = tabRedpointKeys.ContainsKey(cell.index) ? tabRedpointKeys[cell.index] : 0;
+ _cell?.Display(cell.index, nowTabId, titleKey, redpointId, OnTabClicked);
+ }
+
+ private void OnTabClicked(int index)
+ {
+ if (nowTabId == index)
+ {
+ return;
+ }
+ nowTabId = index;
+ tabScroller.m_Scorller.RefreshActiveCellViews();
+ SelectBottomTab(index);
+ }
+
+ private void SelectBottomTab(int index)
+ {
+ if (currentSubUI != null)
+ {
+ currentSubUI.CloseWindow();
+ currentSubUI = null;
+ }
+
+ galaTrans.SetActive(index == 0 || index == 1 || index == 2);
+ moneyTrans2.SetActive(index == 0 || index == 1 || index == 2);
+
+ totalRechargeTrans.SetActive(index == 3);
+ totDayRechargeTrans.SetActive(index == 4);
+
+ switch (index)
{
case 0:
currentSubUI = UIManager.Instance.OpenWindow<OSGalaMissionWin>();
@@ -51,6 +186,81 @@
case 2:
currentSubUI = UIManager.Instance.OpenWindow<OSGalaGiftWin>();
break;
+ case 3:
+ currentSubUI = UIManager.Instance.OpenWindow<TotalRechargeWin>();
+
+ var data = TotalRechargeManager.Instance.GetStoreData();
+ bool isReceived = TotalRechargeManager.Instance.IsReceived(data.shopId);
+ totalRechargeItemCell.Init(new ItemCellModel(data.storeConfig.ItemID, false, data.storeConfig.ItemCnt));
+ totalRechargeItemCell.button.SetListener(() =>
+ {
+ if (!isReceived)
+ {
+ StoreModel.Instance.SendBuyShopItem(data.storeConfig, 1);
+ }
+ else
+ {
+ ItemTipUtility.Show(data.storeConfig.ItemID);
+ }
+
+ });
+
+ totalRechargeHaveImage.SetActive(isReceived);
+ totalRechargeFreeRedImage.SetActive(!isReceived);
+ totalRechargeTimeText.text = TotalRechargeManager.Instance.GetActTimeStr();
+ totalRechargeScoreText.text = Language.Get("TotalRecharge06", TotalRechargeManager.Instance.coinTotal);
+ if (!isReceived)
+ {
+ totalRechargeRotationTween.Play();
+ }
+ else
+ {
+ totalRechargeRotationTween.Stop();
+ totalRechargeRotationTween.SetStartState();
+ }
+ break;
+ case 4:
+ currentSubUI = UIManager.Instance.OpenWindow<TotDayRechargeWin>();
+
+ var data1 = TotDayRechargeManager.Instance.GetStoreData();
+ bool isReceived1 = TotDayRechargeManager.Instance.IsReceived(data1.shopId);
+ totDayRechargeItemCell.Init(new ItemCellModel(data1.storeConfig.ItemID, false, data1.storeConfig.ItemCnt));
+ totDayRechargeItemCell.button.SetListener(() =>
+ {
+ if (!isReceived1)
+ {
+ StoreModel.Instance.SendBuyShopItem(data1.storeConfig, 1);
+ }
+ else
+ {
+ ItemTipUtility.Show(data1.storeConfig.ItemID);
+ }
+
+ });
+
+ totDayRechargeHaveImage.SetActive(isReceived1);
+ totDayRechargeFreeRedImage.SetActive(!isReceived1);
+ totDayRechargeTimeText.text = TotDayRechargeManager.Instance.GetActTimeStr();
+ totDayRechargeScoreText.text = Language.Get("TotalRecharge07", TotDayRechargeManager.Instance.totalDays);
+ if (!isReceived1)
+ {
+ totDayRechargeRotationTween.Play();
+ }
+ else
+ {
+ totDayRechargeRotationTween.Stop();
+ totDayRechargeRotationTween.SetStartState();
+ }
+ break;
+ }
+ }
+
+ private void CloseCurrentSubUI()
+ {
+ if (currentSubUI != null)
+ {
+ currentSubUI.CloseWindow();
+ currentSubUI = null;
}
}
@@ -123,17 +333,19 @@
}
}
}
-
+
void ShowTime()
{
if (TimeUtility.OpenDay >= OSActivityManager.Instance.osGalaOpenDays)
{
- timeText.text = Language.Get("OSActivity6");
+ galaTimeText.text = Language.Get("OSActivity6");
}
else
{
- timeText.text = Language.Get("OSActivity10") + TimeUtility.SecondsToShortDHMS(TimeUtility.GetRemindTimeByOpenDay(OSActivityManager.Instance.osGalaOpenDays));
+ galaTimeText.text = Language.Get("OSActivity10") + TimeUtility.SecondsToShortDHMS(TimeUtility.GetRemindTimeByOpenDay(OSActivityManager.Instance.osGalaOpenDays));
}
+ totalRechargeTimeText.text = TotalRechargeManager.Instance.GetActTimeStr();
+ totDayRechargeTimeText.text = TotDayRechargeManager.Instance.GetActTimeStr();
}
}
diff --git a/Main/System/OSActivity/OSGalaTabCell.cs b/Main/System/OSActivity/OSGalaTabCell.cs
new file mode 100644
index 0000000..fbc9916
--- /dev/null
+++ b/Main/System/OSActivity/OSGalaTabCell.cs
@@ -0,0 +1,32 @@
+using System;
+using UnityEngine;
+using UnityEngine.UI;
+
+public class OSGalaTabCell : MonoBehaviour
+{
+ [SerializeField] Color unSelectColor;
+ [SerializeField] Color selectColor;
+ [SerializeField] ImageEx bgImage;
+ [SerializeField] TextEx titleText;
+ [SerializeField] RedpointBehaviour redpoint;
+ [SerializeField] ButtonEx tabButton;
+
+ private Action<int> onClick;
+
+ public void Display(int index, int selectedIndex, string title, int redpointId, Action<int> onClick)
+ {
+ this.onClick = onClick;
+ bool isSelected = index == selectedIndex;
+
+ bgImage.SetSprite(isSelected ? "TimeRushTabSelect" : "TimeRushTabUnSelect");
+ titleText.text = Language.Get(title);
+ titleText.color = isSelected ? selectColor : unSelectColor;
+
+ redpoint.redpointId = redpointId;
+
+ tabButton.SetListener(() =>
+ {
+ onClick?.Invoke(index);
+ });
+ }
+}
\ No newline at end of file
diff --git a/Main/System/OSActivity/OSGalaTabCell.cs.meta b/Main/System/OSActivity/OSGalaTabCell.cs.meta
new file mode 100644
index 0000000..2c193e5
--- /dev/null
+++ b/Main/System/OSActivity/OSGalaTabCell.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 3e7742ee2b0612c43bac55038ea42ed0
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/System/OSActivity/OperationTotDayRechargeInfo.cs b/Main/System/OSActivity/OperationTotDayRechargeInfo.cs
new file mode 100644
index 0000000..d81f74c
--- /dev/null
+++ b/Main/System/OSActivity/OperationTotDayRechargeInfo.cs
@@ -0,0 +1,21 @@
+锘縰sing System.Collections.Generic;
+
+
+//绱厖娲诲姩
+public class OperationTotDayRechargeInfo : OperationBase
+{
+ public int CfgID; // 娲诲姩鏃堕棿琛ㄩ厤缃甀D
+
+ public override string ToDisplayTime()
+ {
+ var textBuilder = OperationTimeHepler.textBuilder;
+ textBuilder.Length = 0;
+ textBuilder.Append(startDate.ToDisplay());
+ if (startDate != endDate)
+ {
+ textBuilder.Append("鈥�");
+ textBuilder.Append(endDate.ToDisplay());
+ }
+ return textBuilder.ToString();
+ }
+}
diff --git a/Main/System/OSActivity/OperationTotDayRechargeInfo.cs.meta b/Main/System/OSActivity/OperationTotDayRechargeInfo.cs.meta
new file mode 100644
index 0000000..e41ce3b
--- /dev/null
+++ b/Main/System/OSActivity/OperationTotDayRechargeInfo.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: ed77821f2b2191d49b55143750ec812c
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/System/OSActivity/OperationTotalRechargeInfo.cs b/Main/System/OSActivity/OperationTotalRechargeInfo.cs
new file mode 100644
index 0000000..196de07
--- /dev/null
+++ b/Main/System/OSActivity/OperationTotalRechargeInfo.cs
@@ -0,0 +1,21 @@
+锘縰sing System.Collections.Generic;
+
+
+//绱厖娲诲姩
+public class OperationTotalRechargeInfo : OperationBase
+{
+ public int CfgID; // 娲诲姩鏃堕棿琛ㄩ厤缃甀D
+
+ public override string ToDisplayTime()
+ {
+ var textBuilder = OperationTimeHepler.textBuilder;
+ textBuilder.Length = 0;
+ textBuilder.Append(startDate.ToDisplay());
+ if (startDate != endDate)
+ {
+ textBuilder.Append("鈥�");
+ textBuilder.Append(endDate.ToDisplay());
+ }
+ return textBuilder.ToString();
+ }
+}
diff --git a/Main/System/OSActivity/OperationTotalRechargeInfo.cs.meta b/Main/System/OSActivity/OperationTotalRechargeInfo.cs.meta
new file mode 100644
index 0000000..570b29f
--- /dev/null
+++ b/Main/System/OSActivity/OperationTotalRechargeInfo.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 2ca29732cd569824088e31f2f83bdbfb
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/System/OpenServerActivity/OperationTimeHepler.cs b/Main/System/OpenServerActivity/OperationTimeHepler.cs
index 18a98ec..0738659 100644
--- a/Main/System/OpenServerActivity/OperationTimeHepler.cs
+++ b/Main/System/OpenServerActivity/OperationTimeHepler.cs
@@ -495,6 +495,76 @@
operationTimeUpdateEvent?.Invoke(opreationType);
}
+ public void UpdateActTotalRechargeInfo(HAA1D_tagSCActTotalRechargeInfo package)
+ {
+ OperationBase operationBase = null;
+ operationDict.TryGetValue(OperationType.TotalRecharge, out operationBase);
+ if (string.IsNullOrEmpty(package.StartDate) || string.IsNullOrEmpty(package.EndtDate))
+ {
+ ForceStopOperation(OperationType.TotalRecharge);
+ }
+ else
+ {
+ if (operationBase == null)
+ {
+ operationBase = new OperationTotalRechargeInfo();
+ operationDict.Add(OperationType.TotalRecharge, operationBase);
+ }
+ OperationTotalRechargeInfo operation = operationBase as OperationTotalRechargeInfo;
+ operation.Reset();
+ operation.startDate = ParseOperationDate(package.StartDate);
+ operation.endDate = ParseOperationDate(package.EndtDate);
+ operation.ActNum = package.ActNum;
+ operation.CfgID = package.CfgID;
+
+ var config = ActTotalRechargeConfig.Get(package.CfgID);
+ if (config == null)
+ {
+ SysNotifyMgr.Instance.ShowTip("LoadConfigErr");
+ return;
+ }
+
+ if (operationTimeUpdateEvent != null)
+ {
+ operationTimeUpdateEvent(OperationType.TotalRecharge);
+ }
+ }
+ }
+
+ public void UpdateActTotDayRechargeInfo(HAA1B_tagSCActTotDayRechargeInfo package)
+ {
+ OperationBase operationBase = null;
+ operationDict.TryGetValue(OperationType.TotDayRecharge, out operationBase);
+ if (string.IsNullOrEmpty(package.StartDate) || string.IsNullOrEmpty(package.EndtDate))
+ {
+ ForceStopOperation(OperationType.TotDayRecharge);
+ }
+ else
+ {
+ if (operationBase == null)
+ {
+ operationBase = new OperationTotDayRechargeInfo();
+ operationDict.Add(OperationType.TotDayRecharge, operationBase);
+ }
+ OperationTotDayRechargeInfo operation = operationBase as OperationTotDayRechargeInfo;
+ operation.Reset();
+ operation.startDate = ParseOperationDate(package.StartDate);
+ operation.endDate = ParseOperationDate(package.EndtDate);
+ operation.ActNum = package.ActNum;
+ operation.CfgID = package.CfgID;
+
+ var config = ActTotalRechargeConfig.Get(package.CfgID);
+ if (config == null)
+ {
+ SysNotifyMgr.Instance.ShowTip("LoadConfigErr");
+ return;
+ }
+
+ operation.dayReset = config.IsDayReset == 1;
+ operationTimeUpdateEvent?.Invoke(OperationType.TotDayRecharge);
+ }
+ }
+
// public void UpdateActYunShiInfo(HAA87_tagMCActYunshiInfo package)
// {
// Operation operationType = Operation.default48;
@@ -1085,5 +1155,7 @@
TimeRush = 1, //鏃ユ湡鍨嬫椿鍔� - 杞洖娈�
HeroDebut = 2, //鏃ユ湡鍨嬫椿鍔� - 姝﹀皢鐧诲満
HeroReturn = 3, //鏃ユ湡鍨嬫椿鍔� - 姝﹀皢杩斿満
+ TotalRecharge = 4,//绱厖娲诲姩
+ TotDayRecharge = 5, //绱厖澶╂椿鍔�
max,
}
\ No newline at end of file
diff --git a/Main/System/TotDayRecharge.meta b/Main/System/TotDayRecharge.meta
new file mode 100644
index 0000000..9cbc8b9
--- /dev/null
+++ b/Main/System/TotDayRecharge.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 640279443a4eebc458a4b9a817e0fe2f
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/System/TotDayRecharge/TotDayRechargeCell.cs b/Main/System/TotDayRecharge/TotDayRechargeCell.cs
new file mode 100644
index 0000000..10996a8
--- /dev/null
+++ b/Main/System/TotDayRecharge/TotDayRechargeCell.cs
@@ -0,0 +1,74 @@
+锘縰sing System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.UI;
+
+public class TotDayRechargeCell : CellView
+{
+ [SerializeField] Text nameText;
+ [SerializeField] Image processImage;
+ [SerializeField] Text processText;
+ [SerializeField] ItemCell[] itemCells;
+
+ [SerializeField] Button getBtn;
+ [SerializeField] Button gotoBtn;
+ [SerializeField] Transform gotRect;
+
+ TotDayRechargeManager manager { get { return TotDayRechargeManager.Instance; } }
+
+ public void Display(int index, List<int> list)
+ {
+ if (list.IsNullOrEmpty() || index < 0 || index >= list.Count)
+ return;
+ int awardID = list[index];
+ var config = ActTotDayRechargeTempConfig.Get(awardID);
+ if (config == null)
+ return;
+ nameText.text = Language.Get($"TotalRecharge03", config.NeedDay);
+
+ if (config.AwardItemList != null)
+ {
+ for (int i = 0; i < itemCells.Length; i++)
+ {
+ var cell = itemCells[i];
+
+ if (i < config.AwardItemList.Length)
+ {
+ var item = config.AwardItemList[i];
+ cell.SetActive(true);
+ cell.Init(new ItemCellModel(item[0], false, item[1]));
+ cell.button.AddListener(() => ItemTipUtility.Show(item[0]));
+ }
+ else
+ {
+ cell.SetActive(false);
+ }
+ }
+ }
+
+ processText.text = Language.Get("BoneField09", manager.totalDays, config.NeedDay);
+ processImage.fillAmount = manager.totalDays / (float)config.NeedDay;
+
+ int state = manager.GetState(awardID);// 鑾峰彇濂栧姳鐘舵�� 0 涓嶅彲棰嗗彇 1 鏈鍙� 2 宸查鍙�
+
+ gotoBtn.SetActive(state == 0);
+ getBtn.SetActive(state == 1);
+ gotRect.SetActive(state == 2);
+
+ getBtn.SetListener(() => manager.SendGetReward(config.NeedDay));
+ gotoBtn.SetListener(() =>
+ {
+ if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.Recharge, true))
+ {
+ RechargeManager.Instance.selectTabIndex = 1;
+ if (UIManager.Instance.IsOpened<StoreBaseWin>())
+ {
+ UIManager.Instance.GetUI<StoreBaseWin>().ClickFuncBtn(2);
+ }
+ else
+ {
+ UIManager.Instance.OpenWindow<StoreBaseWin>(2);
+ }
+ }
+ });
+ }
+}
diff --git a/Main/System/TotDayRecharge/TotDayRechargeCell.cs.meta b/Main/System/TotDayRecharge/TotDayRechargeCell.cs.meta
new file mode 100644
index 0000000..85749d4
--- /dev/null
+++ b/Main/System/TotDayRecharge/TotDayRechargeCell.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 731ccb7a2bf5d7e49bcd9379cad5ca55
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/System/TotDayRecharge/TotDayRechargeManager.cs b/Main/System/TotDayRecharge/TotDayRechargeManager.cs
new file mode 100644
index 0000000..b2a7871
--- /dev/null
+++ b/Main/System/TotDayRecharge/TotDayRechargeManager.cs
@@ -0,0 +1,251 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+
+public class TotDayRechargeManager : GameSystemManager<TotDayRechargeManager>, IOpenServerActivity
+{
+ public readonly int ActNum = 10;
+ public override void Init()
+ {
+ DTC0102_tagCDBPlayer.beforePlayerDataInitializeEventOnRelogin += OnBeforePlayerDataInitializeEventOnRelogin;
+ OperationTimeHepler.Instance.operationTimeUpdateEvent += OperationTimeUpdateEvent;
+ OperationTimeHepler.Instance.operationStartEvent += OperationStartEvent;
+ OperationTimeHepler.Instance.operationEndEvent += OperationEndEvent;
+ OperationTimeHepler.Instance.operationAdvanceEvent += OperationAdvanceEvent;
+ FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
+ StoreModel.Instance.RefreshBuyShopLimitEvent += OnRefreshBuyShopLimitEvent;
+ }
+
+ public override void Release()
+ {
+ DTC0102_tagCDBPlayer.beforePlayerDataInitializeEventOnRelogin -= OnBeforePlayerDataInitializeEventOnRelogin;
+ OperationTimeHepler.Instance.operationTimeUpdateEvent -= OperationTimeUpdateEvent;
+ OperationTimeHepler.Instance.operationStartEvent -= OperationStartEvent;
+ OperationTimeHepler.Instance.operationEndEvent -= OperationEndEvent;
+ OperationTimeHepler.Instance.operationAdvanceEvent -= OperationAdvanceEvent;
+ FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
+ StoreModel.Instance.RefreshBuyShopLimitEvent -= OnRefreshBuyShopLimitEvent;
+
+ }
+
+ private void OnRefreshBuyShopLimitEvent()
+ {
+ UpdateRedPoint();
+ }
+
+
+ private void OnFuncStateChangeEvent(int obj)
+ {
+ if (obj != (int)FuncOpenEnum.OSGala)
+ return;
+ UpdateRedPoint();
+ }
+
+ private void OnBeforePlayerDataInitializeEventOnRelogin()
+ {
+ totalDays = 0;
+ awardRecord = 0;
+ }
+
+ public const int activityType = (int)OpenServerActivityCenter.ActivityType.AT_DateActivity;
+ public const int activityID = (int)NewDayActivityID.TotDayRechargeAct;
+ public static OperationType operaType = OperationType.TotDayRecharge;
+ // 鎬诲鍔�
+ public Redpoint redPoint = new Redpoint(MainRedDot.RedPoint_OSGala, MainRedDot.RedPoint_OSGala * 10 + 6);
+ public bool IsOpen => OperationTimeHepler.Instance.SatisfyOpenCondition(operaType);
+ public bool IsAdvance => OperationTimeHepler.Instance.SatisfyAdvanceCondition(operaType);
+ public bool priorityOpen => redPoint.state == RedPointState.Simple;
+ public readonly int actNum = 10;
+ public event Action<int> onStateUpdate;
+
+ private void OperationTimeUpdateEvent(OperationType type)
+ {
+ if (type == operaType)
+ {
+
+ }
+ if (UIManager.Instance.IsOpened<OSGalaBaseWin>())
+ UIManager.Instance.CloseWindow<OSGalaBaseWin>();
+ UpdateRedPoint();
+ }
+
+ private void OperationStartEvent(OperationType type, int state)
+ {
+ if (type == operaType && state == 0)
+ {
+ UpdateRedPoint();
+ onStateUpdate?.Invoke(activityID);
+ }
+ }
+
+ private void OperationEndEvent(OperationType type, int state)
+ {
+ if (type == operaType)
+ {
+ if (UIManager.Instance.IsOpened<OSGalaBaseWin>())
+ UIManager.Instance.CloseWindow<OSGalaBaseWin>();
+ UpdateRedPoint();
+ onStateUpdate?.Invoke(activityID);
+ }
+ }
+
+ private void OperationAdvanceEvent(OperationType type)
+ {
+ if (type == operaType)
+ {
+ UpdateRedPoint();
+ onStateUpdate?.Invoke(activityID);
+ }
+ }
+
+ public void UpdateRedPoint()
+ {
+ redPoint.state = RedPointState.None;
+ if (!FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.OSGala))
+ return;
+ if (!IsOpen)
+ return;
+
+ var awardList = GetShowList();
+ if (awardList == null)
+ return;
+ for (int i = 0; i < awardList.Count; i++)
+ {
+ if (GetState(awardList[i]) == 1)
+ {
+ redPoint.state = RedPointState.Simple;
+ return;
+ }
+ }
+
+ var storeData = GetStoreData();
+ if (storeData != null && !IsReceived(storeData.shopId))
+ {
+ redPoint.state = RedPointState.Simple;
+ }
+ }
+
+ public bool GetActInfo(out OperationTotDayRechargeInfo act, out ActTotDayRechargeConfig config)
+ {
+ config = null;
+ if (!OperationTimeHepler.Instance.TryGetOperation(operaType, out act) || act == null)
+ return false;
+ config = ActTotDayRechargeConfig.Get(act.CfgID);
+ return config != null;
+ }
+
+ public List<int> GetShowList(bool isSort = false)
+ {
+ if (!GetActInfo(out var act, out var config))
+ return null;
+
+ int templateID = config.TemplateID;
+ var res = new List<int>();
+
+ var awardIndexSortList = ActTotDayRechargeTempConfig.GetNeedDaySortList(templateID);
+ for (int i = 0; i < awardIndexSortList.Count; i++)
+ {
+ var tempConfig = ActTotDayRechargeTempConfig.GetConfig(templateID, awardIndexSortList[i]);
+ if (tempConfig == null)
+ continue;
+ res.Add(tempConfig.AwardID);
+ }
+
+ if (isSort)
+ {
+ res = res.OrderBy(awardId =>
+ {
+ var tempConfig = ActTotDayRechargeTempConfig.Get(awardId);
+ return IsAwardHave(tempConfig.NeedDay);
+ })
+ .ThenBy(awardId => awardId)
+ .ToList();
+
+ }
+ return res;
+ }
+
+ public bool IsCanBuyShop(int shopID)
+ {
+ StoreConfig config = StoreConfig.Get(shopID);
+ if (config == null)
+ return false;
+ StoreModel.Instance.TryGetIsSellOut(config, out int remainNum);
+ return remainNum > 0;
+ }
+
+ public StoreModel.StoreData GetStoreData()
+ {
+ if (!GetActInfo(out var act, out var config))
+ return null;
+ int actShopType = config.ActShopType;
+ if (StoreModel.Instance.storeTypeDict == null)
+ return null;
+ if (!StoreModel.Instance.storeTypeDict.TryGetValue(actShopType, out var list))
+ return null;
+ if (list.IsNullOrEmpty())
+ return null;
+ return list[0];
+ }
+
+ bool IsAwardHave(int awardIndex)
+ {
+ if (awardIndex < 0 || awardIndex >= 32)
+ return false;
+ return (awardRecord & (1u << awardIndex)) != 0;
+ }
+
+ // 鑾峰彇濂栧姳鐘舵�� 0 涓嶅彲棰嗗彇 1 鏈鍙� 2 宸查鍙�
+ public int GetState(int awardID)
+ {
+ var config = ActTotDayRechargeTempConfig.Get(awardID);
+ if (config == null)
+ return 0;
+ if (totalDays < config.NeedDay)
+ return 0;
+ bool isAwardHave = IsAwardHave(config.NeedDay);
+ return isAwardHave ? 2 : 1;
+ }
+
+ public bool IsReceived(int shopId)
+ {
+ var config = StoreConfig.Get(shopId);
+ if (config == null)
+ return false;
+ int boughtCount = StoreModel.Instance.GetShopLimitBuyCount(shopId);
+ return boughtCount >= config.LimitCnt;
+ }
+
+ public string GetActTimeStr()
+ {
+ if (!GetActInfo(out var act, out var config))
+ {
+ return Language.Get("OSActivity6");
+ }
+ return Language.Get("TotalRecharge08", TimeUtility.SecondsToShortDHMS(act.GetResetSurplusTime()));
+ }
+
+ public byte totalDays; //娲诲姩绱厖澶╂暟
+ public uint awardRecord; //绱厖濂栧姳棰嗗璁板綍锛屾寜濂栧姳绱㈠紩浜岃繘鍒朵綅瀛樺偍鏄惁宸查鍙�
+ public event Action OnTotDayRechargePlayerInfoEvent;
+ public void UpdateTotDayRechargePlayerInfo(HAA1A_tagSCActTotDayRechargePlayerInfo vNetData)
+ {
+ if (ActNum != vNetData.ActNum)
+ return;
+ totalDays = vNetData.TotalDays;
+ awardRecord = vNetData.AwardRecord;
+ UpdateRedPoint();
+ OnTotDayRechargePlayerInfoEvent?.Invoke();
+ }
+
+ public void SendGetReward(int needDay)
+ {
+ string actStr = ActNum.ToString();
+ var pack = new CA504_tagCMPlayerGetReward();
+ pack.RewardType = 19;
+ pack.DataEx = (uint)needDay;
+ pack.DataExStr = actStr;
+ pack.DataExStrLen = (byte)actStr.Length;
+ GameNetSystem.Instance.SendInfo(pack);
+ }
+}
\ No newline at end of file
diff --git a/Main/System/TotDayRecharge/TotDayRechargeManager.cs.meta b/Main/System/TotDayRecharge/TotDayRechargeManager.cs.meta
new file mode 100644
index 0000000..6fc9d93
--- /dev/null
+++ b/Main/System/TotDayRecharge/TotDayRechargeManager.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 4231ac3f6f8d84f4189f5e0f55b93ca0
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/System/TotDayRecharge/TotDayRechargeWin.cs b/Main/System/TotDayRecharge/TotDayRechargeWin.cs
new file mode 100644
index 0000000..c011d14
--- /dev/null
+++ b/Main/System/TotDayRecharge/TotDayRechargeWin.cs
@@ -0,0 +1,51 @@
+锘縰sing System.Collections.Generic;
+using UnityEngine;
+
+//寮�鏈嶆椿鍔�-绱厖
+public class TotDayRechargeWin : UIBase
+{
+ [SerializeField] ScrollerController scroller;
+
+ TotDayRechargeManager manager { get { return TotDayRechargeManager.Instance; } }
+ protected override void OnPreOpen()
+ {
+ scroller.OnRefreshCell += OnRefreshCell;
+ TotDayRechargeManager.Instance.OnTotDayRechargePlayerInfoEvent += OnTotDayRechargePlayerInfoEvent;
+ CreateScroller();
+ }
+
+ protected override void OnPreClose()
+ {
+ scroller.OnRefreshCell -= OnRefreshCell;
+ TotDayRechargeManager.Instance.OnTotDayRechargePlayerInfoEvent -= OnTotDayRechargePlayerInfoEvent;
+ }
+
+ private void OnTotDayRechargePlayerInfoEvent()
+ {
+ scroller.m_Scorller.RefreshActiveCellViews();
+ }
+
+ List<int> showList;
+ void CreateScroller()
+ {
+
+ showList = manager.GetShowList(true);
+ scroller.Refresh();
+ for (int i = 0; i < showList.Count; i++)
+ {
+ scroller.AddCell(ScrollerDataType.Header, i);
+ }
+ scroller.Restart();
+
+ }
+
+ void OnRefreshCell(ScrollerDataType type, CellView cell)
+ {
+ var _cell = cell as TotDayRechargeCell;
+ _cell.Display(cell.index, showList);
+ }
+}
+
+
+
+
diff --git a/Main/System/TotDayRecharge/TotDayRechargeWin.cs.meta b/Main/System/TotDayRecharge/TotDayRechargeWin.cs.meta
new file mode 100644
index 0000000..82ee6bd
--- /dev/null
+++ b/Main/System/TotDayRecharge/TotDayRechargeWin.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 7b483a9d19723db4da256313000559c0
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/System/TotalRecharge.meta b/Main/System/TotalRecharge.meta
new file mode 100644
index 0000000..87f0866
--- /dev/null
+++ b/Main/System/TotalRecharge.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 027d9e03375d65d4197c9f4d1fefa8a5
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/System/TotalRecharge/TotalRechargeCell.cs b/Main/System/TotalRecharge/TotalRechargeCell.cs
new file mode 100644
index 0000000..789adfc
--- /dev/null
+++ b/Main/System/TotalRecharge/TotalRechargeCell.cs
@@ -0,0 +1,74 @@
+锘縰sing System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.UI;
+
+public class TotalRechargeCell : CellView
+{
+ [SerializeField] Text nameText;
+ [SerializeField] Image processImage;
+ [SerializeField] Text processText;
+ [SerializeField] ItemCell[] itemCells;
+
+ [SerializeField] Button getBtn;
+ [SerializeField] Button gotoBtn;
+ [SerializeField] Transform gotRect;
+
+ TotalRechargeManager manager { get { return TotalRechargeManager.Instance; } }
+
+ public void Display(int index, List<int> list)
+ {
+ if (list.IsNullOrEmpty() || index < 0 || index >= list.Count)
+ return;
+ int awardID = list[index];
+ var config = ActTotalRechargeTempConfig.Get(awardID);
+ if (config == null)
+ return;
+ nameText.text = Language.Get($"TotalRecharge02", config.NeedAmount);
+
+ if (config.AwardItemList != null)
+ {
+ for (int i = 0; i < itemCells.Length; i++)
+ {
+ var cell = itemCells[i];
+
+ if (i < config.AwardItemList.Length)
+ {
+ var item = config.AwardItemList[i];
+ cell.SetActive(true);
+ cell.Init(new ItemCellModel(item[0], false, item[1]));
+ cell.button.AddListener(() => ItemTipUtility.Show(item[0]));
+ }
+ else
+ {
+ cell.SetActive(false);
+ }
+ }
+ }
+
+ processText.text = Language.Get("BoneField09", manager.coinTotal, config.NeedAmount);
+ processImage.fillAmount = manager.coinTotal / (float)config.NeedAmount;
+
+ int state = manager.GetState(awardID);// 鑾峰彇濂栧姳鐘舵�� 0 涓嶅彲棰嗗彇 1 鏈鍙� 2 宸查鍙�
+
+ gotoBtn.SetActive(state == 0);
+ getBtn.SetActive(state == 1);
+ gotRect.SetActive(state == 2);
+
+ getBtn.SetListener(() => manager.SendGetReward(config.AwardIndex));
+ gotoBtn.SetListener(() =>
+ {
+ if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.Recharge, true))
+ {
+ RechargeManager.Instance.selectTabIndex = 1;
+ if (UIManager.Instance.IsOpened<StoreBaseWin>())
+ {
+ UIManager.Instance.GetUI<StoreBaseWin>().ClickFuncBtn(2);
+ }
+ else
+ {
+ UIManager.Instance.OpenWindow<StoreBaseWin>(2);
+ }
+ }
+ });
+ }
+}
\ No newline at end of file
diff --git a/Main/System/TotalRecharge/TotalRechargeCell.cs.meta b/Main/System/TotalRecharge/TotalRechargeCell.cs.meta
new file mode 100644
index 0000000..e6153fb
--- /dev/null
+++ b/Main/System/TotalRecharge/TotalRechargeCell.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 133e398df7d3dcb408b3a7dcfb33f083
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/System/TotalRecharge/TotalRechargeManager.cs b/Main/System/TotalRecharge/TotalRechargeManager.cs
new file mode 100644
index 0000000..2a23413
--- /dev/null
+++ b/Main/System/TotalRecharge/TotalRechargeManager.cs
@@ -0,0 +1,252 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+
+public class TotalRechargeManager : GameSystemManager<TotalRechargeManager>, IOpenServerActivity
+{
+ public readonly int ActNum = 10;
+ public override void Init()
+ {
+ DTC0102_tagCDBPlayer.beforePlayerDataInitializeEventOnRelogin += OnBeforePlayerDataInitializeEventOnRelogin;
+ OperationTimeHepler.Instance.operationTimeUpdateEvent += OperationTimeUpdateEvent;
+ OperationTimeHepler.Instance.operationStartEvent += OperationStartEvent;
+ OperationTimeHepler.Instance.operationEndEvent += OperationEndEvent;
+ OperationTimeHepler.Instance.operationAdvanceEvent += OperationAdvanceEvent;
+ FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
+ StoreModel.Instance.RefreshBuyShopLimitEvent += OnRefreshBuyShopLimitEvent;
+ }
+
+ public override void Release()
+ {
+ DTC0102_tagCDBPlayer.beforePlayerDataInitializeEventOnRelogin -= OnBeforePlayerDataInitializeEventOnRelogin;
+ OperationTimeHepler.Instance.operationTimeUpdateEvent -= OperationTimeUpdateEvent;
+ OperationTimeHepler.Instance.operationStartEvent -= OperationStartEvent;
+ OperationTimeHepler.Instance.operationEndEvent -= OperationEndEvent;
+ OperationTimeHepler.Instance.operationAdvanceEvent -= OperationAdvanceEvent;
+ FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
+ StoreModel.Instance.RefreshBuyShopLimitEvent -= OnRefreshBuyShopLimitEvent;
+
+ }
+
+ private void OnRefreshBuyShopLimitEvent()
+ {
+ UpdateRedPoint();
+ }
+
+
+ private void OnFuncStateChangeEvent(int obj)
+ {
+ if (obj != (int)FuncOpenEnum.OSGala)
+ return;
+ UpdateRedPoint();
+ }
+
+
+ private void OnBeforePlayerDataInitializeEventOnRelogin()
+ {
+ coinTotal = 0;
+ awardRecord = 0;
+ }
+
+ public const int activityType = (int)OpenServerActivityCenter.ActivityType.AT_DateActivity;
+ public const int activityID = (int)NewDayActivityID.TotalRechargeAct;
+ public static OperationType operaType = OperationType.TotalRecharge;
+ // 鎬诲鍔�
+ public Redpoint redPoint = new Redpoint(MainRedDot.RedPoint_OSGala, MainRedDot.RedPoint_OSGala * 10 + 5);
+ public bool IsOpen => OperationTimeHepler.Instance.SatisfyOpenCondition(operaType);
+ public bool IsAdvance => OperationTimeHepler.Instance.SatisfyAdvanceCondition(operaType);
+ public bool priorityOpen => redPoint.state == RedPointState.Simple;
+ public readonly int actNum = 10;
+ public event Action<int> onStateUpdate;
+
+ private void OperationTimeUpdateEvent(OperationType type)
+ {
+ if (type == operaType)
+ {
+
+ }
+ if (UIManager.Instance.IsOpened<OSGalaBaseWin>())
+ UIManager.Instance.CloseWindow<OSGalaBaseWin>();
+ UpdateRedPoint();
+ }
+
+ private void OperationStartEvent(OperationType type, int state)
+ {
+ if (type == operaType && state == 0)
+ {
+ UpdateRedPoint();
+ onStateUpdate?.Invoke(activityID);
+ }
+ }
+
+ private void OperationEndEvent(OperationType type, int state)
+ {
+ if (type == operaType)
+ {
+ if (UIManager.Instance.IsOpened<OSGalaBaseWin>())
+ UIManager.Instance.CloseWindow<OSGalaBaseWin>();
+ UpdateRedPoint();
+ onStateUpdate?.Invoke(activityID);
+ }
+ }
+
+ private void OperationAdvanceEvent(OperationType type)
+ {
+ if (type == operaType)
+ {
+ UpdateRedPoint();
+ onStateUpdate?.Invoke(activityID);
+ }
+ }
+
+ public void UpdateRedPoint()
+ {
+ redPoint.state = RedPointState.None;
+ if (!FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.OSGala))
+ return;
+ if (!IsOpen)
+ return;
+
+ var awardList = GetShowList();
+ if (awardList == null)
+ return;
+ for (int i = 0; i < awardList.Count; i++)
+ {
+ if (GetState(awardList[i]) == 1)
+ {
+ redPoint.state = RedPointState.Simple;
+ return;
+ }
+ }
+
+ var storeData = GetStoreData();
+ if (storeData != null && !IsReceived(storeData.shopId))
+ {
+ redPoint.state = RedPointState.Simple;
+ }
+ }
+ public bool GetActInfo(out OperationTotalRechargeInfo act, out ActTotalRechargeConfig config)
+ {
+ config = null;
+ if (!OperationTimeHepler.Instance.TryGetOperation(operaType, out act) || act == null)
+ return false;
+ config = ActTotalRechargeConfig.Get(act.CfgID);
+ return config != null;
+ }
+
+ public List<int> GetShowList(bool isSort = false)
+ {
+ if (!GetActInfo(out var act, out var config))
+ return null;
+
+ int ctgTempID = config.CTGTempID;
+ int ctgShopType = config.CTGShopType;
+ var res = new List<int>();
+
+ var awardIndexSortList = ActTotalRechargeTempConfig.GetAwardIndexSortList(ctgTempID);
+ for (int i = 0; i < awardIndexSortList.Count; i++)
+ {
+ var tempConfig = ActTotalRechargeTempConfig.GetConfig(ctgTempID, awardIndexSortList[i]);
+ if (tempConfig == null)
+ continue;
+ res.Add(tempConfig.AwardID);
+ }
+
+ if (isSort)
+ {
+ res = res.OrderBy(awardId =>
+ {
+ var tempConfig = ActTotalRechargeTempConfig.Get(awardId);
+ return IsAwardHave(tempConfig.AwardIndex);
+ })
+ .ThenBy(awardId => awardId)
+ .ToList();
+
+ }
+ return res;
+ }
+
+ public bool IsCanBuyShop(int shopID)
+ {
+ StoreConfig config = StoreConfig.Get(shopID);
+ if (config == null)
+ return false;
+ StoreModel.Instance.TryGetIsSellOut(config, out int remainNum);
+ return remainNum > 0;
+ }
+
+ public StoreModel.StoreData GetStoreData()
+ {
+ if (!GetActInfo(out var act, out var config))
+ return null;
+ int ctgShopType = config.CTGShopType;
+ if (StoreModel.Instance.storeTypeDict == null)
+ return null;
+ if (!StoreModel.Instance.storeTypeDict.TryGetValue(ctgShopType, out var list))
+ return null;
+ if (list.IsNullOrEmpty())
+ return null;
+ return list[0];
+ }
+
+ public float coinTotal; //娲诲姩绱鍏呭�奸coin鍊�
+ public uint awardRecord; //绱厖濂栧姳棰嗗璁板綍锛屾寜濂栧姳绱㈠紩浜岃繘鍒朵綅瀛樺偍鏄惁宸查鍙�
+ public event Action OnTotalRechargePlayerInfoEvent;
+ public void UpdateTotalRechargePlayerInfo(HAA1C_tagSCActTotalRechargePlayerInfo vNetData)
+ {
+ if (ActNum != vNetData.ActNum)
+ return;
+ coinTotal = (float)vNetData.CoinTotal / (float)100;
+ awardRecord = vNetData.AwardRecord;
+ UpdateRedPoint();
+ OnTotalRechargePlayerInfoEvent?.Invoke();
+ }
+
+ bool IsAwardHave(int awardIndex)
+ {
+ if (awardIndex < 0 || awardIndex >= 32)
+ return false;
+ return (awardRecord & (1u << awardIndex)) != 0;
+ }
+
+ // 鑾峰彇濂栧姳鐘舵�� 0 涓嶅彲棰嗗彇 1 鏈鍙� 2 宸查鍙�
+ public int GetState(int awardID)
+ {
+ var config = ActTotalRechargeTempConfig.Get(awardID);
+ if (config == null)
+ return 0;
+ if (coinTotal < config.NeedAmount)
+ return 0;
+ bool isAwardHave = IsAwardHave(config.AwardIndex);
+ return isAwardHave ? 2 : 1;
+ }
+
+ public bool IsReceived(int shopId)
+ {
+ var config = StoreConfig.Get(shopId);
+ if (config == null)
+ return false;
+ int boughtCount = StoreModel.Instance.GetShopLimitBuyCount(shopId);
+ return boughtCount >= config.LimitCnt;
+ }
+
+ public string GetActTimeStr()
+ {
+ if (!GetActInfo(out var act, out var config))
+ {
+ return Language.Get("OSActivity6");
+ }
+ return Language.Get("TotalRecharge08", TimeUtility.SecondsToShortDHMS(act.GetResetSurplusTime()));
+ }
+
+ public void SendGetReward(int awardIndex)
+ {
+ string actStr = ActNum.ToString();
+ var pack = new CA504_tagCMPlayerGetReward();
+ pack.RewardType = 18;
+ pack.DataEx = (uint)awardIndex;
+ pack.DataExStr = actStr;
+ pack.DataExStrLen = (byte)actStr.Length;
+ GameNetSystem.Instance.SendInfo(pack);
+ }
+}
diff --git a/Main/System/TotalRecharge/TotalRechargeManager.cs.meta b/Main/System/TotalRecharge/TotalRechargeManager.cs.meta
new file mode 100644
index 0000000..f907fae
--- /dev/null
+++ b/Main/System/TotalRecharge/TotalRechargeManager.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 2aa04ba840c15be45a5d2236db47addb
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/System/TotalRecharge/TotalRechargeWin.cs b/Main/System/TotalRecharge/TotalRechargeWin.cs
new file mode 100644
index 0000000..1d5fd9c
--- /dev/null
+++ b/Main/System/TotalRecharge/TotalRechargeWin.cs
@@ -0,0 +1,51 @@
+锘縰sing System.Collections.Generic;
+using UnityEngine;
+
+//寮�鏈嶆椿鍔�-绱厖
+public class TotalRechargeWin : UIBase
+{
+ [SerializeField] ScrollerController scroller;
+
+ TotalRechargeManager manager { get { return TotalRechargeManager.Instance; } }
+ protected override void OnPreOpen()
+ {
+ scroller.OnRefreshCell += OnRefreshCell;
+ TotalRechargeManager.Instance.OnTotalRechargePlayerInfoEvent += OnTotalRechargePlayerInfoEvent;
+ CreateScroller();
+ }
+
+ protected override void OnPreClose()
+ {
+ scroller.OnRefreshCell -= OnRefreshCell;
+ TotalRechargeManager.Instance.OnTotalRechargePlayerInfoEvent -= OnTotalRechargePlayerInfoEvent;
+ }
+
+ private void OnTotalRechargePlayerInfoEvent()
+ {
+ scroller.m_Scorller.RefreshActiveCellViews();
+ }
+
+ List<int> showList;
+ void CreateScroller()
+ {
+
+ showList = manager.GetShowList(true);
+ scroller.Refresh();
+ for (int i = 0; i < showList.Count; i++)
+ {
+ scroller.AddCell(ScrollerDataType.Header, i);
+ }
+ scroller.Restart();
+
+ }
+
+ void OnRefreshCell(ScrollerDataType type, CellView cell)
+ {
+ var _cell = cell as TotalRechargeCell;
+ _cell.Display(cell.index, showList);
+ }
+}
+
+
+
+
diff --git a/Main/System/TotalRecharge/TotalRechargeWin.cs.meta b/Main/System/TotalRecharge/TotalRechargeWin.cs.meta
new file mode 100644
index 0000000..0aa7a01
--- /dev/null
+++ b/Main/System/TotalRecharge/TotalRechargeWin.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: c6c1822a2a0e67a428b6826bc212fd68
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Main/Utility/EnumHelper.cs b/Main/Utility/EnumHelper.cs
index efc959a..65646a6 100644
--- a/Main/Utility/EnumHelper.cs
+++ b/Main/Utility/EnumHelper.cs
@@ -1815,6 +1815,8 @@
TimeRushAct = 200, //杞洖娈�(姝﹀皢鍐插埡)
HeroDebutAct = 201, //鑻遍泟鐧诲満娲诲姩
HeroReturnAct = 202, //鑻遍泟杩斿満娲诲姩
+ TotalRechargeAct = 4, //绱厖娲诲姩
+ TotDayRechargeAct = 5, //绱厖澶╂椿鍔�
}
//浠欑帀璐拱鐨勪簩娆$‘璁ゆ绫诲瀷
--
Gitblit v1.8.0