From 40bb109fb33aa4f5337e5cbc7d8002b31a87aa6a Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期二, 23 二月 2021 01:33:16 +0800
Subject: [PATCH] 8715 子 【主干】【BT2】【测试】H.活动-节日祈愿/【主干】【前端】【BT2】H.活动-节日祈愿 - 节日祝福子界面
---
Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA43_tagMCFeastWishInfo.cs.meta | 11
Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA45_tagMCFeastWishResult.cs.meta | 11
Core/NetworkPackage/ClientPack/ClientToMapServer/CAA SaleActivity/CAA10_tagCMFeastWishBottleChooseItem.cs.meta | 11
System/HolidayWishes/HolidayLoginModel.cs | 2
System/HolidayWishes/WishBottleAwardWin.cs | 178 +++++++
Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA45_tagMCFeastWishResult.cs.meta | 11
System/HolidayWishes/OperationHolidayWish.cs | 52 ++
System/HolidayWishes/OperationHolidayWish.cs.meta | 11
Core/NetworkPackage/ClientPack/ClientToMapServer/CAA SaleActivity/CAA10_tagCMFeastWishBottleChooseItem.cs | 20
Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA43_tagMCFeastWishInfo.cs | 13
System/Welfare/OperationTimeHepler.cs | 29 +
Core/GameEngine/DataToCtl/PackageRegedit.cs | 3
System/HolidayWishes/HolidayWishBottle.cs | 85 +++
System/HolidayWishes/HolidayWishBottle.cs.meta | 11
System/HolidayWishes/HolidayWishPoolWin.cs.meta | 11
Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA43_tagMCFeastWishInfo.cs | 59 ++
System/HolidayWishes/HolidayWishesWin.cs | 21
System/HolidayWishes/HolidayWishPoolItemCell.cs.meta | 11
Core/NetworkPackage/ClientPack/ClientToMapServer/CAA SaleActivity/CAA11_tagCMFeastWishPoolWish.cs | 18
System/HolidayWishes/HolidayWishPoolModel.cs | 287 ++++++++++++
UI/Common/FunctionButtonGroup.cs | 10
Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA45_tagMCFeastWishResult.cs | 17
Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA43_tagMCFeastWishInfo.cs.meta | 11
Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA44_tagMCFeastWishPlayerInfo.cs.meta | 11
System/HolidayWishes/HolidayWishPoolWin.cs | 234 ++++++++++
System/HolidayWishes/TextMove.cs | 51 ++
Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA44_tagMCFeastWishPlayerInfo.cs.meta | 11
System/HolidayWishes/WishBottleAwardWin.cs.meta | 11
Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA44_tagMCFeastWishPlayerInfo.cs | 31 +
System/HolidayWishes/HolidayWishPoolModel.cs.meta | 11
Core/NetworkPackage/ClientPack/ClientToMapServer/CAA SaleActivity/CAA11_tagCMFeastWishPoolWish.cs.meta | 11
Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA45_tagMCFeastWishResult.cs | 21
System/HolidayWishes/TextMove.cs.meta | 11
System/WindowBase/OneLevelWin.cs | 17
System/HolidayWishes/HolidayWishPoolItemCell.cs | 35 +
System/WindowBase/ModelCenter.cs | 1
Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA44_tagMCFeastWishPlayerInfo.cs | 17
37 files changed, 1,360 insertions(+), 6 deletions(-)
diff --git a/Core/GameEngine/DataToCtl/PackageRegedit.cs b/Core/GameEngine/DataToCtl/PackageRegedit.cs
index f2690f4..ae845cf 100644
--- a/Core/GameEngine/DataToCtl/PackageRegedit.cs
+++ b/Core/GameEngine/DataToCtl/PackageRegedit.cs
@@ -527,6 +527,9 @@
Register(typeof(HAA42_tagMCFeastLoginInfo), typeof(DTCAA42_tagMCFeastLoginInfo));
Register(typeof(HAA39_tagMCFeastLoginPlayerInfo), typeof(DTCAA39_tagMCFeastLoginPlayerInfo));
+ Register(typeof(HAA43_tagMCFeastWishInfo), typeof(DTCAA43_tagMCFeastWishInfo));
+ Register(typeof(HAA44_tagMCFeastWishPlayerInfo), typeof(DTCAA44_tagMCFeastWishPlayerInfo));
+ Register(typeof(HAA45_tagMCFeastWishResult), typeof(DTCAA45_tagMCFeastWishResult));
#endregion
}
diff --git a/Core/NetworkPackage/ClientPack/ClientToMapServer/CAA SaleActivity/CAA10_tagCMFeastWishBottleChooseItem.cs b/Core/NetworkPackage/ClientPack/ClientToMapServer/CAA SaleActivity/CAA10_tagCMFeastWishBottleChooseItem.cs
new file mode 100644
index 0000000..e35870a
--- /dev/null
+++ b/Core/NetworkPackage/ClientPack/ClientToMapServer/CAA SaleActivity/CAA10_tagCMFeastWishBottleChooseItem.cs
@@ -0,0 +1,20 @@
+using UnityEngine;
+using System.Collections;
+
+// AA 10 鑺傛棩绁濈鐡堕�夋嫨濂栧姳鐗╁搧 #tagCMFeastWishBottleChooseItem
+
+public class CAA10_tagCMFeastWishBottleChooseItem : GameNetPackBasic {
+ public byte BottleNum; //鐡跺瓙缂栧彿
+ public byte RecordIndex; //鐗╁搧绱㈠紩锛岀敤浜庨�夋嫨鍙婅褰曟槸鍚﹀凡閫夋嫨
+
+ public CAA10_tagCMFeastWishBottleChooseItem () {
+ combineCmd = (ushort)0x03FE;
+ _cmd = (ushort)0xAA10;
+ }
+
+ public override void WriteToBytes () {
+ WriteBytes (BottleNum, NetDataType.BYTE);
+ WriteBytes (RecordIndex, NetDataType.BYTE);
+ }
+
+}
diff --git a/Core/NetworkPackage/ClientPack/ClientToMapServer/CAA SaleActivity/CAA10_tagCMFeastWishBottleChooseItem.cs.meta b/Core/NetworkPackage/ClientPack/ClientToMapServer/CAA SaleActivity/CAA10_tagCMFeastWishBottleChooseItem.cs.meta
new file mode 100644
index 0000000..2bccb99
--- /dev/null
+++ b/Core/NetworkPackage/ClientPack/ClientToMapServer/CAA SaleActivity/CAA10_tagCMFeastWishBottleChooseItem.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 32de00e5247cfb842bf56a52aac81b2d
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Core/NetworkPackage/ClientPack/ClientToMapServer/CAA SaleActivity/CAA11_tagCMFeastWishPoolWish.cs b/Core/NetworkPackage/ClientPack/ClientToMapServer/CAA SaleActivity/CAA11_tagCMFeastWishPoolWish.cs
new file mode 100644
index 0000000..7dcc22e
--- /dev/null
+++ b/Core/NetworkPackage/ClientPack/ClientToMapServer/CAA SaleActivity/CAA11_tagCMFeastWishPoolWish.cs
@@ -0,0 +1,18 @@
+using UnityEngine;
+using System.Collections;
+
+// AA 11 鑺傛棩绁濈姹犵绂� #tagCMFeastWishPoolWish
+
+public class CAA11_tagCMFeastWishPoolWish : GameNetPackBasic {
+ public byte WishCount; //绁濈娆℃暟
+
+ public CAA11_tagCMFeastWishPoolWish () {
+ combineCmd = (ushort)0x03FE;
+ _cmd = (ushort)0xAA11;
+ }
+
+ public override void WriteToBytes () {
+ WriteBytes (WishCount, NetDataType.BYTE);
+ }
+
+}
diff --git a/Core/NetworkPackage/ClientPack/ClientToMapServer/CAA SaleActivity/CAA11_tagCMFeastWishPoolWish.cs.meta b/Core/NetworkPackage/ClientPack/ClientToMapServer/CAA SaleActivity/CAA11_tagCMFeastWishPoolWish.cs.meta
new file mode 100644
index 0000000..ff92b40
--- /dev/null
+++ b/Core/NetworkPackage/ClientPack/ClientToMapServer/CAA SaleActivity/CAA11_tagCMFeastWishPoolWish.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 6395715942de8c4468c36b2e8802649d
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA43_tagMCFeastWishInfo.cs b/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA43_tagMCFeastWishInfo.cs
new file mode 100644
index 0000000..2ddce79
--- /dev/null
+++ b/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA43_tagMCFeastWishInfo.cs
@@ -0,0 +1,13 @@
+using UnityEngine;
+using System.Collections;
+using Snxxz.UI;
+// AA 43 鑺傛棩绁濈娲诲姩淇℃伅 #tagMCFeastWishInfo
+
+public class DTCAA43_tagMCFeastWishInfo : DtcBasic {
+ public override void Done(GameNetPackBasic vNetPack) {
+ base.Done(vNetPack);
+ HAA43_tagMCFeastWishInfo vNetData = vNetPack as HAA43_tagMCFeastWishInfo;
+
+ OperationTimeHepler.Instance.UpdateHolidayWish(vNetData);
+ }
+}
diff --git a/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA43_tagMCFeastWishInfo.cs.meta b/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA43_tagMCFeastWishInfo.cs.meta
new file mode 100644
index 0000000..fa7d9cd
--- /dev/null
+++ b/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA43_tagMCFeastWishInfo.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 6389daba18ea32b42bdfd2acda521382
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA44_tagMCFeastWishPlayerInfo.cs b/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA44_tagMCFeastWishPlayerInfo.cs
new file mode 100644
index 0000000..781cf0d
--- /dev/null
+++ b/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA44_tagMCFeastWishPlayerInfo.cs
@@ -0,0 +1,17 @@
+using UnityEngine;
+using System.Collections;
+using Snxxz.UI;
+
+// AA 44 鑺傛棩绁濈娲诲姩鐜╁淇℃伅 #tagMCFeastWishPlayerInfo
+
+public class DTCAA44_tagMCFeastWishPlayerInfo : DtcBasic {
+
+ HolidayWishPoolModel model { get { return ModelCenter.Instance.GetModel<HolidayWishPoolModel>(); } }
+
+ public override void Done(GameNetPackBasic vNetPack) {
+ base.Done(vNetPack);
+ HAA44_tagMCFeastWishPlayerInfo vNetData = vNetPack as HAA44_tagMCFeastWishPlayerInfo;
+
+ model.UpdateInfo(vNetData);
+ }
+}
diff --git a/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA44_tagMCFeastWishPlayerInfo.cs.meta b/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA44_tagMCFeastWishPlayerInfo.cs.meta
new file mode 100644
index 0000000..7bcb40a
--- /dev/null
+++ b/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA44_tagMCFeastWishPlayerInfo.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 0f40199dfd060cf49ae1ec192afa4bdc
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA45_tagMCFeastWishResult.cs b/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA45_tagMCFeastWishResult.cs
new file mode 100644
index 0000000..087f304
--- /dev/null
+++ b/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA45_tagMCFeastWishResult.cs
@@ -0,0 +1,17 @@
+using UnityEngine;
+using System.Collections;
+using Snxxz.UI;
+
+// AA 45 鑺傛棩绁濈绁濈缁撴灉 #tagMCFeastWishResult
+
+public class DTCAA45_tagMCFeastWishResult : DtcBasic {
+
+ HolidayWishPoolModel model { get { return ModelCenter.Instance.GetModel<HolidayWishPoolModel>(); } }
+
+ public override void Done(GameNetPackBasic vNetPack) {
+ base.Done(vNetPack);
+ HAA45_tagMCFeastWishResult vNetData = vNetPack as HAA45_tagMCFeastWishResult;
+
+ model.OnAddWish(vNetData);
+ }
+}
diff --git a/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA45_tagMCFeastWishResult.cs.meta b/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA45_tagMCFeastWishResult.cs.meta
new file mode 100644
index 0000000..27aac4c
--- /dev/null
+++ b/Core/NetworkPackage/DTCFile/ServerPack/HAA_SaleActivity/DTCAA45_tagMCFeastWishResult.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 73804b4fa0de1464da68194ab7d2c990
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA43_tagMCFeastWishInfo.cs b/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA43_tagMCFeastWishInfo.cs
new file mode 100644
index 0000000..1667bd6
--- /dev/null
+++ b/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA43_tagMCFeastWishInfo.cs
@@ -0,0 +1,59 @@
+using UnityEngine;
+using System.Collections;
+
+// AA 43 鑺傛棩绁濈娲诲姩淇℃伅 #tagMCFeastWishInfo
+
+public class HAA43_tagMCFeastWishInfo : GameNetPackBasic {
+ public string StartDate; // 寮�濮嬫棩鏈� y-m-d
+ public string EndtDate; // 缁撴潫鏃ユ湡 y-m-d
+ public byte ResetType; // 閲嶇疆绫诲瀷锛�0-0鐐归噸缃紱1-5鐐瑰紑锛�5鐐归噸缃紱2-5鐐瑰紑锛�0鐐归噸缃�
+ public byte WishPoolShowCount; //绁濈姹犲睍绀虹墿鍝佹暟
+ public uint[] WishPoolShowItemList; //绁濈姹犲睍绀虹墿鍝両D鍒楄〃
+ public byte BottleCount; // 绁濈鐡朵釜鏁�
+ public tagMCFeastWishBottleInfo[] BottleInfoList; // 绁濈鐡朵俊鎭�
+
+ public HAA43_tagMCFeastWishInfo () {
+ _cmd = (ushort)0xAA43;
+ }
+
+ public override void ReadFromBytes (byte[] vBytes) {
+ TransBytes (out StartDate, vBytes, NetDataType.Chars, 10);
+ TransBytes (out EndtDate, vBytes, NetDataType.Chars, 10);
+ TransBytes (out ResetType, vBytes, NetDataType.BYTE);
+ TransBytes (out WishPoolShowCount, vBytes, NetDataType.BYTE);
+ TransBytes (out WishPoolShowItemList, vBytes, NetDataType.DWORD, WishPoolShowCount);
+ TransBytes (out BottleCount, vBytes, NetDataType.BYTE);
+ BottleInfoList = new tagMCFeastWishBottleInfo[BottleCount];
+ for (int i = 0; i < BottleCount; i ++) {
+ BottleInfoList[i] = new tagMCFeastWishBottleInfo();
+ TransBytes (out BottleInfoList[i].BottleNum, vBytes, NetDataType.BYTE);
+ TransBytes (out BottleInfoList[i].NeedWishValue, vBytes, NetDataType.WORD);
+ TransBytes (out BottleInfoList[i].ChooseTimeMax, vBytes, NetDataType.BYTE);
+ TransBytes (out BottleInfoList[i].ChoosePrizeCount, vBytes, NetDataType.BYTE);
+ BottleInfoList[i].ChoosePrizeList = new tagMCFeastWishBottleItem[BottleInfoList[i].ChoosePrizeCount];
+ for (int j = 0; j < BottleInfoList[i].ChoosePrizeCount; j ++) {
+ BottleInfoList[i].ChoosePrizeList[j] = new tagMCFeastWishBottleItem();
+ TransBytes (out BottleInfoList[i].ChoosePrizeList[j].RecordIndex, vBytes, NetDataType.BYTE);
+ TransBytes (out BottleInfoList[i].ChoosePrizeList[j].ItemID, vBytes, NetDataType.DWORD);
+ TransBytes (out BottleInfoList[i].ChoosePrizeList[j].ItemCount, vBytes, NetDataType.WORD);
+ TransBytes (out BottleInfoList[i].ChoosePrizeList[j].IsBind, vBytes, NetDataType.BYTE);
+ }
+ }
+ }
+
+ public struct tagMCFeastWishBottleInfo {
+ public byte BottleNum; //鐡跺瓙缂栧彿
+ public ushort NeedWishValue; //鍗曟棰嗗鎵�闇�绁濈鍊�
+ public byte ChooseTimeMax; //鏈�澶у彲棰嗗娆℃暟
+ public byte ChoosePrizeCount; //鍙�夋嫨濂栧姳涓暟
+ public tagMCFeastWishBottleItem[] ChoosePrizeList; // 閫夋嫨濂栧姳鐗╁搧鍒楄〃锛屽凡閫夎繃鐨勬棤娉曞啀閫�
+ }
+
+ public struct tagMCFeastWishBottleItem {
+ public byte RecordIndex; //鐗╁搧绱㈠紩锛岀敤浜庨�夋嫨鍙婅褰曟槸鍚﹀凡閫夋嫨
+ public uint ItemID;
+ public ushort ItemCount;
+ public byte IsBind;
+ }
+
+}
diff --git a/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA43_tagMCFeastWishInfo.cs.meta b/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA43_tagMCFeastWishInfo.cs.meta
new file mode 100644
index 0000000..7547392
--- /dev/null
+++ b/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA43_tagMCFeastWishInfo.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 493eeebd8fe9f8647a73248300a6bf63
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA44_tagMCFeastWishPlayerInfo.cs b/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA44_tagMCFeastWishPlayerInfo.cs
new file mode 100644
index 0000000..189bcf2
--- /dev/null
+++ b/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA44_tagMCFeastWishPlayerInfo.cs
@@ -0,0 +1,31 @@
+using UnityEngine;
+using System.Collections;
+
+// AA 44 鑺傛棩绁濈娲诲姩鐜╁淇℃伅 #tagMCFeastWishPlayerInfo
+
+public class HAA44_tagMCFeastWishPlayerInfo : GameNetPackBasic {
+ public byte BottleCount; // 绁濈鐡朵釜鏁�
+ public tagMCFeastWishPlayerBottle[] PlayerBottleInfo; // 绁濈鐡朵俊鎭�
+
+ public HAA44_tagMCFeastWishPlayerInfo () {
+ _cmd = (ushort)0xAA44;
+ }
+
+ public override void ReadFromBytes (byte[] vBytes) {
+ TransBytes (out BottleCount, vBytes, NetDataType.BYTE);
+ PlayerBottleInfo = new tagMCFeastWishPlayerBottle[BottleCount];
+ for (int i = 0; i < BottleCount; i ++) {
+ PlayerBottleInfo[i] = new tagMCFeastWishPlayerBottle();
+ TransBytes (out PlayerBottleInfo[i].BottleNum, vBytes, NetDataType.BYTE);
+ TransBytes (out PlayerBottleInfo[i].WishValue, vBytes, NetDataType.WORD);
+ TransBytes (out PlayerBottleInfo[i].ChooseRecord, vBytes, NetDataType.DWORD);
+ }
+ }
+
+ public struct tagMCFeastWishPlayerBottle {
+ public byte BottleNum; //鐡跺瓙缂栧彿
+ public ushort WishValue; //褰撳墠鍙敤绁濈鍊�
+ public uint ChooseRecord; //宸查�夌墿鍝佺储寮曡褰曪紝涓庤褰曠储寮曚綅杩愮畻鍒ゆ柇鏄惁宸查�夋嫨锛涚疮璁″凡閫夋嫨娆℃暟鍓嶇鑷繁璁$畻锛岄�氳繃璇ュ�煎彲绠楀嚭
+ }
+
+}
diff --git a/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA44_tagMCFeastWishPlayerInfo.cs.meta b/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA44_tagMCFeastWishPlayerInfo.cs.meta
new file mode 100644
index 0000000..3f6551a
--- /dev/null
+++ b/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA44_tagMCFeastWishPlayerInfo.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: bbf6572f0f3ef834b95a2810b7b86847
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA45_tagMCFeastWishResult.cs b/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA45_tagMCFeastWishResult.cs
new file mode 100644
index 0000000..9117791
--- /dev/null
+++ b/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA45_tagMCFeastWishResult.cs
@@ -0,0 +1,21 @@
+using UnityEngine;
+using System.Collections;
+
+// AA 45 鑺傛棩绁濈绁濈缁撴灉 #tagMCFeastWishResult
+
+public class HAA45_tagMCFeastWishResult : GameNetPackBasic {
+ public ushort AddWishValue; // 鏈澧炲姞鐨勭绂忓��
+ public ushort WishResultLen;
+ public string WishResult; // 鑾峰緱鐗╁搧缁撴灉[[鐗╁搧ID,涓暟,鏄惁缁戝畾], ...]
+
+ public HAA45_tagMCFeastWishResult () {
+ _cmd = (ushort)0xAA45;
+ }
+
+ public override void ReadFromBytes (byte[] vBytes) {
+ TransBytes (out AddWishValue, vBytes, NetDataType.WORD);
+ TransBytes (out WishResultLen, vBytes, NetDataType.WORD);
+ TransBytes (out WishResult, vBytes, NetDataType.Chars, WishResultLen);
+ }
+
+}
diff --git a/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA45_tagMCFeastWishResult.cs.meta b/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA45_tagMCFeastWishResult.cs.meta
new file mode 100644
index 0000000..525ce36
--- /dev/null
+++ b/Core/NetworkPackage/ServerPack/HAA_SaleActivity/HAA45_tagMCFeastWishResult.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 0ce5b0f0805bebe49ba639bc0022ea72
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/System/HolidayWishes/HolidayLoginModel.cs b/System/HolidayWishes/HolidayLoginModel.cs
index 5f31788..0e4b14c 100644
--- a/System/HolidayWishes/HolidayLoginModel.cs
+++ b/System/HolidayWishes/HolidayLoginModel.cs
@@ -119,6 +119,8 @@
OperationTimeHepler.Instance.TryGetOperation(Operation.HolidayLogin, out holiday);
redPoint.state = RedPointState.None;
+ if (holiday == null) return; //灏佸寘椤哄簭濡傛灉鏈夐棶棰� 姝ゅ涓虹┖
+
for (int i = 0; i < holiday.loginAwards.Count; i++)
{
if (GetLoginAwardState(holiday.loginAwards[i].DayNum) == 1)
diff --git a/System/HolidayWishes/HolidayWishBottle.cs b/System/HolidayWishes/HolidayWishBottle.cs
new file mode 100644
index 0000000..ffd7019
--- /dev/null
+++ b/System/HolidayWishes/HolidayWishBottle.cs
@@ -0,0 +1,85 @@
+锘�//--------------------------------------------------------
+// [Author]: 绗簩涓栫晫
+// [ Date ]: Thursday, April 18, 2019
+//--------------------------------------------------------
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.UI;
+
+namespace Snxxz.UI
+{
+
+ public class HolidayWishBottle : MonoBehaviour
+ {
+ [SerializeField] Image bottleWater;
+ [SerializeField] Image bottleFull;
+ [SerializeField] UIAlphaTween m_AlphaTween;
+ [SerializeField] Text waterProcess;
+ [SerializeField] Text isOver;
+ [SerializeField] UIEffect AddWish;
+ [SerializeField] TextMove AddWishText;
+ [SerializeField] Button OpenAwards;
+
+ HolidayWishPoolModel model { get { return ModelCenter.Instance.GetModel<HolidayWishPoolModel>(); } }
+
+ private void Awake()
+ {
+ model.UpdateWishNum += ShowAddEffect;
+ }
+
+
+ public void Display(byte bottleNum, OperationHolidayWish holiday)
+ {
+ AddWish.gameObject.SetActive(true);
+ bottleFull.gameObject.SetActive(false);
+ m_AlphaTween.enabled = false;
+
+ var process = Math.Min(model.GetBottleProcessState(bottleNum, holiday), 1);
+ if (process == -1)
+ {
+ //宸查瀹�
+ isOver.gameObject.SetActive(true);
+
+ bottleFull.gameObject.SetActive(false);
+ bottleWater.gameObject.SetActive(false);
+ waterProcess.gameObject.SetActive(false);
+ }
+ else
+ {
+ if (process == 1)
+ {
+ //宸叉弧
+ bottleFull.gameObject.SetActive(true);
+ m_AlphaTween.enabled = true;
+ m_AlphaTween.Play();
+ }
+ isOver.gameObject.SetActive(false);
+
+ bottleWater.gameObject.SetActive(true);
+ bottleWater.fillAmount = process;
+ waterProcess.gameObject.SetActive(true);
+ waterProcess.text = (int)(process * 100) + "%";
+ }
+
+ OpenAwards.SetListener(() =>
+ {
+ model.bottleNumSelect = bottleNum;
+ WindowCenter.Instance.Open<WishBottleAwardWin>();
+ });
+ }
+
+ public void ShowAddEffect(int num)
+ {
+ AddWishText.Begin(Language.Get("SubWishInfo3", num));
+ AddWish.Play();
+ }
+
+ }
+}
+
+
+
+
diff --git a/System/HolidayWishes/HolidayWishBottle.cs.meta b/System/HolidayWishes/HolidayWishBottle.cs.meta
new file mode 100644
index 0000000..942843e
--- /dev/null
+++ b/System/HolidayWishes/HolidayWishBottle.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: ac8419ef66b74134787c567518e24609
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/System/HolidayWishes/HolidayWishPoolItemCell.cs b/System/HolidayWishes/HolidayWishPoolItemCell.cs
new file mode 100644
index 0000000..661b912
--- /dev/null
+++ b/System/HolidayWishes/HolidayWishPoolItemCell.cs
@@ -0,0 +1,35 @@
+锘�//--------------------------------------------------------
+// [Author]: 绗簩涓栫晫
+// [ Date ]: Wednesday, September 26, 2018
+//--------------------------------------------------------
+using UnityEngine;
+using System.Collections;
+using UnityEngine.UI;
+
+
+namespace Snxxz.UI {
+
+ public class HolidayWishPoolItemCell : CellView {
+ [SerializeField] ItemCell itemCell;
+
+ public void Display(int index)
+ {
+ OperationHolidayWish holiday;
+ OperationTimeHepler.Instance.TryGetOperation(Operation.HolidayWish, out holiday);
+
+ //绗竴涓负鏍囩殑鐗�
+ int itemID = (int)holiday.wishPool[index];
+ var config = ItemConfig.Get(itemID);
+ var itemData = new ItemCellModel(itemID, false, 1);
+ itemCell.Init(itemData);
+ itemCell.button.SetListener(()=> {
+ ItemTipUtility.Show(itemID);
+ });
+
+ }
+ }
+
+}
+
+
+
diff --git a/System/HolidayWishes/HolidayWishPoolItemCell.cs.meta b/System/HolidayWishes/HolidayWishPoolItemCell.cs.meta
new file mode 100644
index 0000000..2035a94
--- /dev/null
+++ b/System/HolidayWishes/HolidayWishPoolItemCell.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 1ea4bf8da19778c4293fcf6b234c8360
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/System/HolidayWishes/HolidayWishPoolModel.cs b/System/HolidayWishes/HolidayWishPoolModel.cs
new file mode 100644
index 0000000..542390b
--- /dev/null
+++ b/System/HolidayWishes/HolidayWishPoolModel.cs
@@ -0,0 +1,287 @@
+锘縰sing System;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.UI;
+
+
+namespace Snxxz.UI
+{
+ public class HolidayWishPoolModel : Model, IBeforePlayerDataInitialize, IPlayerLoginOk, IOpenServerActivity
+ {
+ public event Action<int> onStateUpdate;
+ public const int redPointID = 28002;
+ public Redpoint redPoint = new Redpoint(MainRedDot.RedPoint_HolidayWishes, redPointID);
+ Operation operationType = Operation.HolidayWish;
+
+ //鑺傛棩绁濈 id浠�101寮�濮嬪拰绮惧僵娲诲姩鍖哄垎
+ public const int activityType = (int)OpenServerActivityCenter.ActivityType.AT_JRZF;
+ public const int activityID = 102;
+
+ //鐡跺瓙缂栧彿瀵瑰簲鐨刬nt2<绁濈鍊硷紝棰嗗彇鎯呭喌>
+ public Dictionary<byte, Int2> bottleDict = new Dictionary<byte, Int2>();
+ public event Action UpdateBottleInfo; // 鐡跺瓙淇℃伅鍙樻洿 绁濈鍊煎拰棰嗗鎯呭喌
+ public event Action UpdateLegendMsg;
+ public event Action<int> UpdateWishNum;
+
+ public byte bottleNumSelect;
+ public List<WishLegend> wishLegends = new List<WishLegend>();
+
+ public int wishItemID; //绁濈闇�瑕佺殑鐗╁搧ID
+ public int wishCount1; // 绁濈娆℃暟
+ public int wishSingleNeedNum = 1; //鍗曟绁濈闇�瑕佺殑鐗╁搧鏁伴噺
+ public int wishCount2;
+
+ bool IsRequestLegend = false; //棣栨鍚姩鐣岄潰璇锋眰
+ int viewType = 17;
+
+ PackModel playerPack { get { return ModelCenter.Instance.GetModel<PackModel>(); } }
+
+ public override void Init()
+ {
+ playerPack.refreshItemCountEvent += RefreshItemCountEvent;
+ DTCA003_tagUniversalGameRecInfo.onGetUniversalGameInfo += OnGetUniversalGameInfo;
+ OperationTimeHepler.Instance.operationStartEvent += OperationStartEvent;
+ OperationTimeHepler.Instance.operationEndEvent += OperationEndEvent;
+ OperationTimeHepler.Instance.operationAdvanceEvent += OperationAdvanceEvent;
+ OpenServerActivityCenter.Instance.Register(activityID, this, activityType);
+
+ var funcCfg = FuncConfigConfig.Get("FeastWishCfg");
+ wishItemID = int.Parse(funcCfg.Numerical1);
+ var _jsonDataC = LitJson.JsonMapper.ToObject(funcCfg.Numerical2);
+ if (_jsonDataC.Count > 0)
+ {
+ wishCount1 = int.Parse(_jsonDataC[0].ToString());
+ wishCount2 = int.Parse(_jsonDataC[1].ToString());
+ }
+ }
+
+
+
+ public void OnBeforePlayerDataInitialize()
+ {
+ bottleDict.Clear();
+ IsRequestLegend = false;
+ wishLegends.Clear();
+ }
+
+ public void OnPlayerLoginOk()
+ {
+ }
+
+ public override void UnInit()
+ {
+ playerPack.refreshItemCountEvent -= RefreshItemCountEvent;
+ DTCA003_tagUniversalGameRecInfo.onGetUniversalGameInfo -= OnGetUniversalGameInfo;
+ OperationTimeHepler.Instance.operationStartEvent -= OperationStartEvent;
+ OperationTimeHepler.Instance.operationEndEvent -= OperationEndEvent;
+ OperationTimeHepler.Instance.operationAdvanceEvent -= OperationAdvanceEvent;
+ }
+
+ public bool IsOpen {
+ get {
+ return OperationTimeHepler.Instance.SatisfyOpenCondition(operationType);
+ }
+ }
+
+ public bool priorityOpen {
+ get {
+ return redPoint.state == RedPointState.Simple;
+ }
+ }
+
+ public bool IsAdvance {
+ get {
+ return OperationTimeHepler.Instance.SatisfyAdvanceCondition(operationType);
+ }
+ }
+
+ private void OperationEndEvent(Operation type, int state)
+ {
+ if (type == operationType && state == 0)
+ {
+ if (onStateUpdate != null)
+ {
+ onStateUpdate(activityID);
+ }
+ }
+ }
+
+ private void OperationAdvanceEvent(Operation type)
+ {
+ if (type == operationType)
+ {
+ if (onStateUpdate != null)
+ {
+ onStateUpdate(activityID);
+ }
+ }
+ }
+
+ private void OperationStartEvent(Operation type, int state)
+ {
+ if (type == operationType && state == 0)
+ {
+
+ if (onStateUpdate != null)
+ {
+ onStateUpdate(activityID);
+ }
+ }
+ }
+
+ //0 鍙鍙� 1 宸查鍙�
+ public int GetBottleAwardState(byte bottleNum, int index)
+ {
+
+ OperationHolidayWish holiday;
+ OperationTimeHepler.Instance.TryGetOperation(operationType, out holiday);
+
+ int recordIndex = holiday.wishBottles[bottleNumSelect].ChoosePrizeList[index].RecordIndex;
+ if (((int)Math.Pow(2, recordIndex) & bottleDict[bottleNum].y) == 0)
+ {
+ return 0;
+ }
+
+ return 1;
+ }
+
+ void UpdateRedpoint()
+ {
+ OperationHolidayWish holiday;
+ OperationTimeHepler.Instance.TryGetOperation(operationType, out holiday);
+ redPoint.state = RedPointState.None;
+
+ if (holiday == null) return; //灏佸寘椤哄簭濡傛灉鏈夐棶棰� 姝ゅ涓虹┖
+
+ // 鐡跺瓙鐨勭绂忓�兼弧 鍜� 鏈夌绂忓�煎彲绁堟効鐨勬儏鍐� 澧炲姞绾㈢偣
+ foreach (var bottle in bottleDict)
+ {
+ var state = GetBottleProcessState(bottle.Key, holiday);
+ if (state >= 1)
+ {
+ redPoint.state = RedPointState.Simple;
+ }
+ }
+
+ if (playerPack.GetItemCountByID(PackType.Item, wishItemID) >= wishCount1)
+ {
+ redPoint.state = RedPointState.Simple;
+ }
+
+ }
+
+ //鐡跺瓙杩涘害0鍒�1锛� -1浠h〃宸查瀹�
+ public float GetBottleProcessState(byte bottleNum, OperationHolidayWish holiday)
+ {
+ if (holiday == null) return 0;
+ if (!bottleDict.ContainsKey(bottleNum) || !holiday.wishBottles.ContainsKey(bottleNum)) return 0;
+
+ if (NumberOf1(bottleDict[bottleNum].y) >= holiday.wishBottles[bottleNum].ChooseTimeMax)
+ return -1;
+
+ return bottleDict[bottleNum].x / (float)holiday.wishBottles[bottleNum].NeedWishValue;
+ }
+
+ //閬嶅巻姣忔娑堥櫎涓�涓�1锛屾湁澶氬皯娆″氨澶氬皯涓�1
+ private int NumberOf1(int n)
+ {
+ int count = 0;
+ while (n != 0)
+ {
+ count++;
+ n &= n - 1;
+ }
+ return count;
+ }
+
+ public void UpdateInfo(HAA44_tagMCFeastWishPlayerInfo netPack)
+ {
+ for (int i = 0; i < netPack.PlayerBottleInfo.Length; i++)
+ {
+ byte bottleNum = netPack.PlayerBottleInfo[i].BottleNum;
+ if (bottleDict.ContainsKey(bottleNum))
+ {
+ bottleDict[bottleNum] = new Int2(netPack.PlayerBottleInfo[i].WishValue, (int)netPack.PlayerBottleInfo[i].ChooseRecord);
+ }
+ else
+ {
+ bottleDict.Add(bottleNum, new Int2(netPack.PlayerBottleInfo[i].WishValue, (int)netPack.PlayerBottleInfo[i].ChooseRecord));
+ }
+ }
+
+ if (UpdateBottleInfo != null)
+ UpdateBottleInfo();
+
+ UpdateRedpoint();
+ }
+
+ public void SendWish(byte wishCount)
+ {
+ CAA11_tagCMFeastWishPoolWish wish = new CAA11_tagCMFeastWishPoolWish();
+ wish.WishCount = wishCount;
+ GameNetSystem.Instance.SendInfo(wish);
+ }
+
+ private void RefreshItemCountEvent(PackType packType, int index, int itemId)
+ {
+ if (itemId != wishItemID) return;
+ UpdateRedpoint();
+ }
+
+
+ //姣忔鍚姩娓告垙 鍙湪鎵撳紑鐣岄潰鍋氫竴娆¤姹傦紝鍚庣画浼氭敹鍒版湇鍔$鍗曟潯閫氱煡
+ public void RequestLegend()
+ {
+ if (IsRequestLegend) return;
+ IsRequestLegend = true;
+ CA001_tagViewUniversalGameRec legend = new CA001_tagViewUniversalGameRec();
+ legend.ViewType = (byte)viewType;
+ GameNetSystem.Instance.SendInfo(legend);
+ }
+
+ public void OnAddWish(HAA45_tagMCFeastWishResult netPack)
+ {
+ if (UpdateWishNum != null)
+ {
+ UpdateWishNum((int)netPack.AddWishValue);
+ }
+ }
+
+ private void OnGetUniversalGameInfo(HA003_tagUniversalGameRecInfo package)
+ {
+ if (!IsRequestLegend)
+ {
+ //鐣岄潰棣栨鍚姩鍚庝細鑾峰彇涓�娆℃�讳俊鎭�
+ return;
+ }
+
+ if (package.Type != viewType) return;
+ for (int i = 0; i < package.Count; i++)
+ {
+ WishLegend msg = new WishLegend()
+ {
+ name = package.UniversalGameRec[i].StrValue1,
+ itemID = (int)package.UniversalGameRec[i].Value1,
+ itemCount = (int)package.UniversalGameRec[i].Value2,
+ source = (int)package.UniversalGameRec[i].Value3,
+ };
+
+ wishLegends.Add(msg);
+ }
+ if (wishLegends.Count > 35)
+ wishLegends.RemoveRange(0, 5);
+
+ if (UpdateLegendMsg != null)
+ UpdateLegendMsg();
+
+ }
+
+ public struct WishLegend
+ {
+ public string name;
+ public int itemID;
+ public int itemCount;
+ public int source;
+ }
+ }
+}
diff --git a/System/HolidayWishes/HolidayWishPoolModel.cs.meta b/System/HolidayWishes/HolidayWishPoolModel.cs.meta
new file mode 100644
index 0000000..59e87d1
--- /dev/null
+++ b/System/HolidayWishes/HolidayWishPoolModel.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: cf43871e7f02e6c4da7abc3b4f7bb861
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/System/HolidayWishes/HolidayWishPoolWin.cs b/System/HolidayWishes/HolidayWishPoolWin.cs
new file mode 100644
index 0000000..e6d058a
--- /dev/null
+++ b/System/HolidayWishes/HolidayWishPoolWin.cs
@@ -0,0 +1,234 @@
+锘�//--------------------------------------------------------
+// [Author]: 绗簩涓栫晫
+// [ Date ]: Thursday, April 18, 2019
+//--------------------------------------------------------
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.UI;
+
+namespace Snxxz.UI
+{
+
+ public class HolidayWishPoolWin : Window
+ {
+ List<HolidayWishBottle> bottleList = new List<HolidayWishBottle>();
+
+ ScrollerController m_Controller; // 鐗╁搧
+ Button wish1;
+ Text wishTxt1;
+ Text wishNeedNum1;
+
+ Button wish2;
+ Text wishTxt2;
+ Text wishNeedNum2;
+
+ Text allStarNum; //鍙绂忕殑鐗╁搧鎬绘暟
+ RichText wishLegend;
+
+ Operation operationType = Operation.HolidayWish;
+
+ HolidayWishPoolModel model { get { return ModelCenter.Instance.GetModel<HolidayWishPoolModel>(); } }
+ PackModel playerPack { get { return ModelCenter.Instance.GetModel<PackModel>(); } }
+
+ #region Built-in
+ protected override void BindController()
+ {
+ bottleList.Add(GetWidgt<HolidayWishBottle>("light1"));
+ bottleList.Add(GetWidgt<HolidayWishBottle>("light2"));
+ bottleList.Add(GetWidgt<HolidayWishBottle>("light3"));
+ bottleList.Add(GetWidgt<HolidayWishBottle>("light4"));
+ bottleList.Add(GetWidgt<HolidayWishBottle>("light5"));
+
+ m_Controller = GetWidgt<ScrollerController>("ScrollerControl");
+
+ wish1 = GetWidgt<Button>("wishbtn1");
+ wishTxt1 = GetWidgt<Text>("Text1");
+ wishNeedNum1 = GetWidgt<Text>("startnum1");
+
+ wish2 = GetWidgt<Button>("wishbtn2");
+ wishTxt2 = GetWidgt<Text>("Text2");
+ wishNeedNum2 = GetWidgt<Text>("startnum2");
+
+ allStarNum = GetWidgt<Text>("allstarnum");
+ wishLegend = GetWidgt<RichText>("Content1");
+ }
+
+
+ void UseItemWish(int needEmpty, byte useCnt)
+ {
+ if (useCnt > playerPack.GetItemCountByID(PackType.Item, model.wishItemID))
+ {
+ SysNotifyMgr.Instance.ShowTip("RealmLevelUpError_3");
+ return;
+ }
+ int emptyCnt = playerPack.GetEmptyGridCount(PackType.Item);
+ if (emptyCnt < needEmpty)
+ {
+ SysNotifyMgr.Instance.ShowTip("GeRen_lhs_202580");
+ return;
+ }
+ model.SendWish(useCnt);
+ }
+
+ protected override void AddListeners()
+ {
+ wish1.SetListener(() =>
+ {
+ UseItemWish(2, (byte)model.wishCount1);
+ });
+
+ wish2.SetListener(() =>
+ {
+ UseItemWish(2, (byte)model.wishCount2);
+ });
+
+ }
+
+ protected override void OnPreOpen()
+ {
+ model.RequestLegend();
+ m_Controller.OnRefreshCell += OnRefreshCell;
+ OperationTimeHepler.Instance.operationTimeUpdateEvent += OperationTimeUpdateEvent;
+ playerPack.refreshItemCountEvent += RefreshItemCountEvent;
+ model.UpdateLegendMsg += UpdateLegendMsg;
+ model.UpdateBottleInfo += Display;
+
+ }
+
+
+ protected override void OnAfterOpen()
+ {
+ Display();
+ }
+
+ protected override void OnPreClose()
+ {
+ m_Controller.OnRefreshCell -= OnRefreshCell;
+ OperationTimeHepler.Instance.operationTimeUpdateEvent -= OperationTimeUpdateEvent;
+ playerPack.refreshItemCountEvent -= RefreshItemCountEvent;
+ model.UpdateLegendMsg -= UpdateLegendMsg;
+ model.UpdateBottleInfo -= Display;
+ }
+
+ protected override void OnAfterClose()
+ {
+ }
+ #endregion
+
+
+ private void RefreshItemCountEvent(PackType packType, int index, int itemId)
+ {
+ if (itemId != model.wishItemID) return;
+ var itemCnt = playerPack.GetItemCountByID(PackType.Item, model.wishItemID);
+ allStarNum.text = itemCnt.ToString();
+
+ if (itemCnt < model.wishSingleNeedNum * model.wishCount1)
+ wishNeedNum1.color = UIHelper.GetUIColor(TextColType.Red, true);
+ else
+ wishNeedNum1.color = UIHelper.GetUIColor(TextColType.LightYellow, true);
+
+ if (itemCnt < model.wishSingleNeedNum * model.wishCount2)
+ wishNeedNum2.color = UIHelper.GetUIColor(TextColType.Red, true);
+ else
+ wishNeedNum2.color = UIHelper.GetUIColor(TextColType.LightYellow, true);
+ }
+
+
+ void Display()
+ {
+ OperationHolidayWish holiday;
+ OperationTimeHepler.Instance.TryGetOperation(operationType, out holiday);
+
+ int index = 0;
+ foreach(var key in holiday.wishBottles.Keys)
+ {
+ if (index >= bottleList.Count)
+ {
+ break;
+ }
+ bottleList[index].gameObject.SetActive(true);
+ bottleList[index].Display(key, holiday);
+ index++;
+ }
+ for (int i = index; i < bottleList.Count; i++)
+ {
+ bottleList[i].gameObject.SetActive(false);
+ }
+
+ DisplayScroll();
+
+ var itemCnt = playerPack.GetItemCountByID(PackType.Item, model.wishItemID);
+
+ wishTxt1.text = Language.Get("SubWishInfo4", model.wishCount1);
+ wishNeedNum1.text = (model.wishSingleNeedNum * model.wishCount1).ToString();
+ if (itemCnt < model.wishSingleNeedNum * model.wishCount1)
+ wishNeedNum1.color = UIHelper.GetUIColor(TextColType.Red, true);
+ else
+ wishNeedNum1.color = UIHelper.GetUIColor(TextColType.LightYellow, true);
+
+ wishTxt2.text = Language.Get("SubWishInfo4", model.wishCount2);
+ wishNeedNum2.text = (model.wishSingleNeedNum * model.wishCount2).ToString();
+ if (itemCnt < model.wishSingleNeedNum * model.wishCount2)
+ wishNeedNum2.color = UIHelper.GetUIColor(TextColType.Red, true);
+ else
+ wishNeedNum2.color = UIHelper.GetUIColor(TextColType.LightYellow, true);
+
+ allStarNum.text = itemCnt.ToString();
+ }
+
+ void DisplayScroll()
+ {
+ m_Controller.Refresh();
+ OperationHolidayWish holiday;
+ OperationTimeHepler.Instance.TryGetOperation(operationType, out holiday);
+
+ for (int i = 0; i < holiday.wishPool.Count; i++)
+ {
+ m_Controller.AddCell(ScrollerDataType.Header, i);
+ }
+ m_Controller.Restart();
+ m_Controller.m_Scorller.RefreshActiveCellViews();
+ }
+
+ private void OnRefreshCell(ScrollerDataType type, CellView cell)
+ {
+ if (type != ScrollerDataType.Header) return;
+ var _cell = cell as HolidayWishPoolItemCell;
+ _cell.Display(_cell.index);
+ }
+
+ private void OperationTimeUpdateEvent(Operation type)
+ {
+ if (type == operationType)
+ {
+ Display();
+ }
+ }
+
+ void UpdateLegendMsg()
+ {
+ string msg = string.Empty;
+ foreach (var legend in model.wishLegends)
+ {
+ if (legend.source == 1)
+ {
+ //绁濈鐡惰幏寰�
+ msg += Language.Get("SubWishInfo6", legend.name, legend.itemID, legend.itemCount);
+ }
+ else {
+ msg += Language.Get("SubWishInfo5", legend.name, legend.itemID, legend.itemCount);
+ }
+ }
+
+ wishLegend.text = msg;
+ }
+
+ }
+}
+
+
+
+
diff --git a/System/HolidayWishes/HolidayWishPoolWin.cs.meta b/System/HolidayWishes/HolidayWishPoolWin.cs.meta
new file mode 100644
index 0000000..593441b
--- /dev/null
+++ b/System/HolidayWishes/HolidayWishPoolWin.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 833ff8bebd4e1004aa9a7c597fbd710e
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/System/HolidayWishes/HolidayWishesWin.cs b/System/HolidayWishes/HolidayWishesWin.cs
index cbe3c11..b344b7c 100644
--- a/System/HolidayWishes/HolidayWishesWin.cs
+++ b/System/HolidayWishes/HolidayWishesWin.cs
@@ -19,7 +19,7 @@
{
base.AddListeners();
SetFunctionListener(0, ShowLoginWin);
- SetFunctionListener(1, ShowAlchemyNormalDrug);
+ SetFunctionListener(1, ShowHolidayWishPoolWin);
SetFunctionListener(2, ShowAlchemyFairy);
SetFunctionListener(3, ShowAlchemyFairyDrug);
}
@@ -57,11 +57,24 @@
SetFunctionButtonActive(3, false);
}
+
+ }
+
+ protected override void OnAfterOpen()
+ {
+ for (int i = 0; i < 4; i++)
+ {
+ if (GetFunctionButtonRedPointState(i) != RedPointState.None)
+ {
+ FunctionButtonInvoke(i);
+ break;
+ }
+ }
}
protected override void OnPreClose()
{
- CloseSubWindows();
+ base.OnPreClose();
}
#endregion
@@ -73,10 +86,10 @@
functionOrder = 0;
}
- private void ShowAlchemyNormalDrug()
+ private void ShowHolidayWishPoolWin()
{
CloseSubWindows();
- WindowCenter.Instance.Open<AlchemyNormalUseDrugWin>();
+ WindowCenter.Instance.Open<HolidayWishPoolWin>();
functionOrder = 1;
}
diff --git a/System/HolidayWishes/OperationHolidayWish.cs b/System/HolidayWishes/OperationHolidayWish.cs
new file mode 100644
index 0000000..eee899c
--- /dev/null
+++ b/System/HolidayWishes/OperationHolidayWish.cs
@@ -0,0 +1,52 @@
+锘縰sing System;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+namespace Snxxz.UI
+{
+ public class OperationHolidayWish : OperationBase
+ {
+ //鐡跺瓙缂栧彿瀵瑰簲鐨勪俊鎭�
+ public Dictionary<byte, HAA43_tagMCFeastWishInfo.tagMCFeastWishBottleInfo> wishBottles = new Dictionary<byte, HAA43_tagMCFeastWishInfo.tagMCFeastWishBottleInfo>();
+ public List<uint> wishPool = new List<uint>(); //灞曠ず濂栨睜鐗╁搧ID
+
+ public override bool SatisfyOpenCondition()
+ {
+ return PlayerDatas.Instance.baseData.LV >= limitLv;
+ }
+
+ 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();
+ }
+
+ public override void Reset()
+ {
+ base.Reset();
+ }
+
+ public void ParsePackage(HAA43_tagMCFeastWishInfo package)
+ {
+ wishPool.Clear();
+ for (int i = 0; i < package.WishPoolShowItemList.Length; i++)
+ {
+ wishPool.Add(package.WishPoolShowItemList[i]);
+ }
+
+ wishBottles.Clear();
+ for (int i = 0; i < package.BottleInfoList.Length; i++)
+ {
+ wishBottles.Add(package.BottleInfoList[i].BottleNum, package.BottleInfoList[i]);
+ }
+ }
+ }
+}
+
diff --git a/System/HolidayWishes/OperationHolidayWish.cs.meta b/System/HolidayWishes/OperationHolidayWish.cs.meta
new file mode 100644
index 0000000..12fec06
--- /dev/null
+++ b/System/HolidayWishes/OperationHolidayWish.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 4dd67f0928853d14eb487df8dfb9aa79
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/System/HolidayWishes/TextMove.cs b/System/HolidayWishes/TextMove.cs
new file mode 100644
index 0000000..552da51
--- /dev/null
+++ b/System/HolidayWishes/TextMove.cs
@@ -0,0 +1,51 @@
+锘�//--------------------------------------------------------
+// [Author]: 绗簩涓栫晫
+// [ Date ]: Thursday, September 14, 2017
+//--------------------------------------------------------
+using UnityEngine;
+using UnityEngine.UI;
+
+namespace Snxxz.UI
+{
+
+ public class TextMove : MonoBehaviour
+ {
+ [SerializeField] ScreenMoveTo m_MoveTo;
+ [SerializeField] UIAlphaTween m_AlphaTween;
+
+ [SerializeField] Text m_Text;
+ public float startX;
+ public float startY;
+
+
+ public void Begin(string content)
+ {
+ this.transform.SetActive(true);
+ SetEnable(true);
+ m_Text.text = content;
+
+ this.transform.localPosition = new Vector3(startX, startY, 0);
+ m_MoveTo.Begin(OnFloatEnd);
+ m_Text.color = m_Text.color.SetA(1f);
+ m_AlphaTween.SetStartState();
+ m_AlphaTween.Play();
+ }
+
+ public void SetEnable(bool _enable)
+ {
+ m_MoveTo.enabled = _enable;
+ m_AlphaTween.enabled = _enable;
+ }
+
+ private void OnFloatEnd()
+ {
+ SetEnable(false);
+ this.transform.SetActive(false);
+ }
+
+ }
+
+}
+
+
+
diff --git a/System/HolidayWishes/TextMove.cs.meta b/System/HolidayWishes/TextMove.cs.meta
new file mode 100644
index 0000000..608c831
--- /dev/null
+++ b/System/HolidayWishes/TextMove.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 533fe0e50f5571946a1462416c3d622b
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/System/HolidayWishes/WishBottleAwardWin.cs b/System/HolidayWishes/WishBottleAwardWin.cs
new file mode 100644
index 0000000..b29e5fa
--- /dev/null
+++ b/System/HolidayWishes/WishBottleAwardWin.cs
@@ -0,0 +1,178 @@
+锘�//--------------------------------------------------------
+// [Author]: 绗簩涓栫晫
+// [ Date ]: Thursday, June 21, 2018
+//--------------------------------------------------------
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+using UnityEngine.UI;
+
+namespace Snxxz.UI
+{
+
+ public class WishBottleAwardWin : Window
+ {
+
+ List<ItemCell> itemList = new List<ItemCell>();
+ List<Image> itemSelect = new List<Image>();
+ List<Image> getYetList = new List<Image>();
+ Button m_OKButton;
+ Text m_Text;
+ Button m_CloseButton;
+
+ int SelectIndex = -1;
+ Operation operationType = Operation.HolidayWish;
+
+ HolidayWishPoolModel model { get { return ModelCenter.Instance.GetModel<HolidayWishPoolModel>(); } }
+
+ #region Built-in
+
+ protected override void BindController()
+ {
+ itemList.Clear();
+ itemList.Add(GetWidgt<ItemCell>("ItemCell1"));
+ itemList.Add(GetWidgt<ItemCell>("ItemCell2"));
+ itemList.Add(GetWidgt<ItemCell>("ItemCell3"));
+ itemList.Add(GetWidgt<ItemCell>("ItemCell4"));
+ itemList.Add(GetWidgt<ItemCell>("ItemCell5"));
+ itemList.Add(GetWidgt<ItemCell>("ItemCell6"));
+ itemList.Add(GetWidgt<ItemCell>("ItemCell7"));
+ itemList.Add(GetWidgt<ItemCell>("ItemCell8"));
+
+ itemSelect.Clear();
+ itemSelect.Add(GetWidgt<Image>("select1"));
+ itemSelect.Add(GetWidgt<Image>("select2"));
+ itemSelect.Add(GetWidgt<Image>("select3"));
+ itemSelect.Add(GetWidgt<Image>("select4"));
+ itemSelect.Add(GetWidgt<Image>("select5"));
+ itemSelect.Add(GetWidgt<Image>("select6"));
+ itemSelect.Add(GetWidgt<Image>("select7"));
+ itemSelect.Add(GetWidgt<Image>("select8"));
+
+ getYetList.Clear();
+ getYetList.Add(GetWidgt<Image>("yet1"));
+ getYetList.Add(GetWidgt<Image>("yet2"));
+ getYetList.Add(GetWidgt<Image>("yet3"));
+ getYetList.Add(GetWidgt<Image>("yet4"));
+ getYetList.Add(GetWidgt<Image>("yet5"));
+ getYetList.Add(GetWidgt<Image>("yet6"));
+ getYetList.Add(GetWidgt<Image>("yet7"));
+ getYetList.Add(GetWidgt<Image>("yet8"));
+
+ m_OKButton = GetWidgt<Button>("OK");
+ m_CloseButton = GetWidgt<Button>("CloseBtn");
+ m_Text = GetWidgt<Text>("wishText");
+ }
+
+ protected override void AddListeners()
+ {
+ m_CloseButton.AddListener(CloseClick);
+ }
+
+ protected override void OnPreOpen()
+ {
+ SelectIndex = -1;
+ model.UpdateBottleInfo += Display;
+ Display();
+ }
+
+ protected override void OnAfterOpen()
+ {
+
+ }
+
+ protected override void OnPreClose()
+ {
+ model.UpdateBottleInfo -= Display;
+ }
+
+ protected override void OnAfterClose()
+ {
+ }
+
+ #endregion
+
+ void Display()
+ {
+ OperationHolidayWish holiday;
+ OperationTimeHepler.Instance.TryGetOperation(operationType, out holiday);
+
+
+ for (int i = 0; i < itemList.Count; i++)
+ {
+ var items = holiday.wishBottles[model.bottleNumSelect].ChoosePrizeList;
+ if (i < items.Length)
+ {
+ itemList[i].gameObject.SetActive(true);
+
+ int itemID = (int)items[i].ItemID;
+ var config = ItemConfig.Get(itemID);
+ var itemData = new ItemCellModel(itemID, false, items[i].ItemCount);
+ itemList[i].Init(itemData);
+ itemList[i].auctionIcon.gameObject.SetActive(items[i].IsBind > 0 ? true : false);
+
+
+ //閫変腑
+ foreach (var select in itemSelect)
+ {
+ select.gameObject.SetActive(false);
+ }
+ if (SelectIndex != -1)
+ itemSelect[SelectIndex].gameObject.SetActive(true);
+
+ int index = i;
+ itemList[i].button.SetListener(() => {
+ foreach (var select in itemSelect)
+ {
+ select.gameObject.SetActive(false);
+ }
+ itemSelect[index].gameObject.SetActive(true);
+ SelectIndex = index;
+ });
+
+ //宸查鍙�
+ getYetList[i].gameObject.SetActive(model.GetBottleAwardState(model.bottleNumSelect, i) == 1);
+ }
+ else
+ {
+ itemList[i].gameObject.SetActive(false);
+ }
+ }
+
+ m_OKButton.SetListener(() => {
+ if (SelectIndex == -1)
+ {
+ SysNotifyMgr.Instance.ShowTip("WishBottle1");
+ return;
+ }
+ if (model.GetBottleAwardState(model.bottleNumSelect, SelectIndex) == 1)
+ {
+ SysNotifyMgr.Instance.ShowTip("WishBottle");
+ return;
+ }
+
+ int recordIndex = holiday.wishBottles[model.bottleNumSelect].ChoosePrizeList[SelectIndex].RecordIndex;
+
+ CAA10_tagCMFeastWishBottleChooseItem wish = new CAA10_tagCMFeastWishBottleChooseItem();
+ wish.BottleNum = model.bottleNumSelect;
+ wish.RecordIndex = (byte)recordIndex;
+ GameNetSystem.Instance.SendInfo(wish);
+ });
+
+ var needNum = holiday.wishBottles[model.bottleNumSelect].NeedWishValue;
+ var curNum = model.bottleDict[model.bottleNumSelect].x;
+ string curNumStr = UIHelper.AppendColor(curNum >= needNum ? TextColType.DarkGreen:TextColType.Red, curNum.ToString());
+
+ m_Text.text = Language.Get("SubWishInfo7", curNumStr, needNum);
+ }
+
+ }
+
+}
+
+
+
+
diff --git a/System/HolidayWishes/WishBottleAwardWin.cs.meta b/System/HolidayWishes/WishBottleAwardWin.cs.meta
new file mode 100644
index 0000000..802b4d3
--- /dev/null
+++ b/System/HolidayWishes/WishBottleAwardWin.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 6ce78a3b2fd4c5343ba3ac108ff81823
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/System/Welfare/OperationTimeHepler.cs b/System/Welfare/OperationTimeHepler.cs
index 1323a4f..02b6dd0 100644
--- a/System/Welfare/OperationTimeHepler.cs
+++ b/System/Welfare/OperationTimeHepler.cs
@@ -466,6 +466,34 @@
}
}
+ public void UpdateHolidayWish(HAA43_tagMCFeastWishInfo package)
+ {
+ OperationBase operationBase = null;
+ operationDict.TryGetValue(Operation.HolidayWish, out operationBase);
+ if (string.IsNullOrEmpty(package.StartDate) || string.IsNullOrEmpty(package.EndtDate))
+ {
+ ForceStopOperation(Operation.HolidayWish);
+ }
+ else
+ {
+ if (operationBase == null)
+ {
+ operationBase = new OperationHolidayWish();
+ operationDict.Add(Operation.HolidayWish, operationBase);
+ }
+ var operation = operationBase as OperationHolidayWish;
+ operation.Reset();
+ operation.startDate = ParseOperationDate(package.StartDate);
+ operation.endDate = ParseOperationDate(package.EndtDate);
+ operation.resetType = package.ResetType;
+ operation.ParsePackage(package);
+ if (operationTimeUpdateEvent != null)
+ {
+ operationTimeUpdateEvent(Operation.HolidayWish);
+ }
+ }
+ }
+
public void UpdateMultiRechargePackage(HAA27_tagMCActRechargePrizeInfo package)
{
@@ -1106,6 +1134,7 @@
DaysAccumulateRecharge, //绱鍏呭�硷紝澶氭棩
CollectWords, //鏀堕泦鏂囧瓧
HolidayLogin, //鑺傛棩鐧诲綍
+ HolidayWish, //鑺傛棩绁濈
max,
}
}
diff --git a/System/WindowBase/ModelCenter.cs b/System/WindowBase/ModelCenter.cs
index 486b0c6..31951d6 100644
--- a/System/WindowBase/ModelCenter.cs
+++ b/System/WindowBase/ModelCenter.cs
@@ -244,6 +244,7 @@
RegisterModel<CollectWordsModel>();
RegisterModel<HolidayLoginModel>();
+ RegisterModel<HolidayWishPoolModel>();
inited = true;
}
diff --git a/System/WindowBase/OneLevelWin.cs b/System/WindowBase/OneLevelWin.cs
index 33dc7ff..4fd3704 100644
--- a/System/WindowBase/OneLevelWin.cs
+++ b/System/WindowBase/OneLevelWin.cs
@@ -73,6 +73,9 @@
m_TitleIcon.SetSprite(WindowConfig.GetTitleIconKey(name));
m_TitleIcon.SetNativeSize();
+
+ PlayerDatas.Instance.playerDataRefreshEvent += OnPlayerDataUpdate;
+
}
protected override void AddListeners()
@@ -89,7 +92,7 @@
m_Diamond = this.GetComponent<Text>("Pivot/Container_BackGround/FollowStoreBottom/GoldCountBG/CountText");
m_BindDiamond = this.GetComponent<Text>("Pivot/Container_BackGround/FollowStoreBottom/GoldPaperCountBG/CountText");
- PlayerDatas.Instance.playerDataRefreshEvent += OnPlayerDataUpdate;
+
UpdateMoney();
}
@@ -99,7 +102,6 @@
protected override void OnPreClose()
{
- PlayerDatas.Instance.playerDataRefreshEvent -= OnPlayerDataUpdate;
CloseSubWindows();
}
@@ -138,6 +140,17 @@
m_Group.SetFunctionButtonActive(order, isShow);
}
+ public RedPointState GetFunctionButtonRedPointState(int order)
+ {
+ return m_Group.GetFunctionButtonRedPointState(order);
+ }
+
+ public void FunctionButtonInvoke(int order)
+ {
+ m_Group.TriggerByOrder(order);
+ m_Group.GotoOrder(order);
+ }
+
private void OnPlayerDataUpdate(PlayerDataType type)
{
switch (type)
diff --git a/UI/Common/FunctionButtonGroup.cs b/UI/Common/FunctionButtonGroup.cs
index 596aab0..dc19f94 100644
--- a/UI/Common/FunctionButtonGroup.cs
+++ b/UI/Common/FunctionButtonGroup.cs
@@ -239,6 +239,16 @@
{
functionButtons[order].gameObject.SetActive(isShow);
}
+ }
+
+ public RedPointState GetFunctionButtonRedPointState(int order)
+ {
+ if (functionButtons.ContainsKey(order))
+ {
+ return RedpointCenter.Instance.GetRedpointState(functionButtons[order].redpoint.redpointId);
+ }
+
+ return RedPointState.None;
}
}
--
Gitblit v1.8.0