浏览代码

Merge remote-tracking branch 'remotes/origin/master' into ios_test

hexiaojie 11 月之前
父节点
当前提交
0381016295
共有 83 个文件被更改,包括 3169 次插入50 次删除
  1. 2 0
      GameClient/Assets/Game/HotUpdate/Constant/ConstMessage.cs
  2. 1 0
      GameClient/Assets/Game/HotUpdate/Controller/GameController.cs
  3. 26 0
      GameClient/Assets/Game/HotUpdate/Data/ActivityDataManager.cs
  4. 18 21
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityGetYuanXiao/UI_ActivityGetYuanXiaoEntryUI.cs
  5. 74 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityGetYuanXiao/UI_RewardTipsUI.cs
  6. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityGetYuanXiao/UI_RewardTipsUI.cs.meta
  7. 4 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_MainUI.cs
  8. 3 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/RoleInfo/UI_PhoneBindingUI.cs
  9. 8 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable.meta
  10. 71 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_ComRewardList.cs
  11. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_ComRewardList.cs.meta
  12. 103 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_Component1.cs
  13. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_Component1.cs.meta
  14. 71 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_TurnSpecialTipsUI.cs
  15. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_TurnSpecialTipsUI.cs.meta
  16. 96 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_TurnTableRewardUI.cs
  17. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_TurnTableRewardUI.cs.meta
  18. 190 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_TurnTableUI.cs
  19. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_TurnTableUI.cs.meta
  20. 80 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_reward.cs
  21. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_reward.cs.meta
  22. 83 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_rewardItem.cs
  23. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_rewardItem.cs.meta
  24. 102 0
      GameClient/Assets/Game/HotUpdate/ServerProxy/ActivitySProxy.cs
  25. 13 0
      GameClient/Assets/Game/HotUpdate/ServerProxy/RoleInfoSProxy.cs
  26. 26 12
      GameClient/Assets/Game/HotUpdate/Views/ActivityGetYuanXiao/ActivityGetYuanXiaoEntryView.cs
  27. 1 1
      GameClient/Assets/Game/HotUpdate/Views/ActivityGetYuanXiao/ActivityGetYuanXiaoTargetView.cs
  28. 2 2
      GameClient/Assets/Game/HotUpdate/Views/ActivityGetYuanXiao/ActivityGetYuanXiaoView.cs
  29. 78 0
      GameClient/Assets/Game/HotUpdate/Views/ActivityGetYuanXiao/ActivityZLFGRewardTips.cs
  30. 11 0
      GameClient/Assets/Game/HotUpdate/Views/ActivityGetYuanXiao/ActivityZLFGRewardTips.cs.meta
  31. 6 1
      GameClient/Assets/Game/HotUpdate/Views/DailyWelfare/DailyWelfareView.cs
  32. 1 1
      GameClient/Assets/Game/HotUpdate/Views/DailyWelfare/NewLimitChargeView.cs
  33. 5 4
      GameClient/Assets/Game/HotUpdate/Views/FieldWork/FieldWorkLevelView.cs
  34. 12 1
      GameClient/Assets/Game/HotUpdate/Views/MainUI/MainUIView.cs
  35. 6 0
      GameClient/Assets/Game/HotUpdate/Views/MatchingCompetition/MatchingCompetitionRewardView.cs
  36. 6 0
      GameClient/Assets/Game/HotUpdate/Views/MatchingCompetition/MatchingCompetitionSelectView.cs
  37. 1 0
      GameClient/Assets/Game/HotUpdate/Views/RoleInfo/ChangeThemeView.cs
  38. 58 5
      GameClient/Assets/Game/HotUpdate/Views/RoleInfo/PhoneBindingView.cs
  39. 10 2
      GameClient/Assets/Game/HotUpdate/Views/Task/CombTaskController.cs
  40. 8 0
      GameClient/Assets/Game/HotUpdate/Views/TurnTable.meta
  41. 142 0
      GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnSpecialTipsView.cs
  42. 11 0
      GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnSpecialTipsView.cs.meta
  43. 245 0
      GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnTableRewardTIpsView.cs
  44. 11 0
      GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnTableRewardTIpsView.cs.meta
  45. 32 0
      GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnTableTipsCR.cs
  46. 11 0
      GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnTableTipsCR.cs.meta
  47. 97 0
      GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnTableTipsView.cs
  48. 11 0
      GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnTableTipsView.cs.meta
  49. 599 0
      GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnTableView.cs
  50. 11 0
      GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnTableView.cs.meta
  51. 二进制
      GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0!a.png
  52. 二进制
      GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0.png
  53. 二进制
      GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0_1!a.png
  54. 二进制
      GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0_1.png
  55. 二进制
      GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0_2!a.png
  56. 120 0
      GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0_2!a.png.meta
  57. 二进制
      GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0_2.png
  58. 120 0
      GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0_2.png.meta
  59. 二进制
      GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_fui.bytes
  60. 二进制
      GameClient/Assets/ResIn/UI/Main/Main_atlas0!a.png
  61. 二进制
      GameClient/Assets/ResIn/UI/Main/Main_atlas0.png
  62. 二进制
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_1!a.png
  63. 二进制
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_1.png
  64. 二进制
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_3.png
  65. 二进制
      GameClient/Assets/ResIn/UI/Main/Main_atlas0_5.png
  66. 二进制
      GameClient/Assets/ResIn/UI/Main/Main_fui.bytes
  67. 二进制
      GameClient/Assets/ResIn/UI/MatchingCompetition/MatchingCompetition_atlas0!a.png
  68. 二进制
      GameClient/Assets/ResIn/UI/MatchingCompetition/MatchingCompetition_atlas0.png
  69. 二进制
      GameClient/Assets/ResIn/UI/MatchingCompetition/MatchingCompetition_atlas0_1!a.png
  70. 二进制
      GameClient/Assets/ResIn/UI/MatchingCompetition/MatchingCompetition_atlas0_1.png
  71. 二进制
      GameClient/Assets/ResIn/UI/MatchingCompetition/MatchingCompetition_fui.bytes
  72. 二进制
      GameClient/Assets/ResIn/UI/RoleInfo/RoleInfo_fui.bytes
  73. 8 0
      GameClient/Assets/ResIn/UI/TurnTable.meta
  74. 二进制
      GameClient/Assets/ResIn/UI/TurnTable/TurnTable_atlas0!a.png
  75. 120 0
      GameClient/Assets/ResIn/UI/TurnTable/TurnTable_atlas0!a.png.meta
  76. 二进制
      GameClient/Assets/ResIn/UI/TurnTable/TurnTable_atlas0.png
  77. 120 0
      GameClient/Assets/ResIn/UI/TurnTable/TurnTable_atlas0.png.meta
  78. 二进制
      GameClient/Assets/ResIn/UI/TurnTable/TurnTable_atlas0_1!a.png
  79. 120 0
      GameClient/Assets/ResIn/UI/TurnTable/TurnTable_atlas0_1!a.png.meta
  80. 二进制
      GameClient/Assets/ResIn/UI/TurnTable/TurnTable_atlas0_1.png
  81. 120 0
      GameClient/Assets/ResIn/UI/TurnTable/TurnTable_atlas0_1.png.meta
  82. 二进制
      GameClient/Assets/ResIn/UI/TurnTable/TurnTable_fui.bytes
  83. 7 0
      GameClient/Assets/ResIn/UI/TurnTable/TurnTable_fui.bytes.meta

+ 2 - 0
GameClient/Assets/Game/HotUpdate/Constant/ConstMessage.cs

@@ -266,5 +266,7 @@ namespace GFGGame
         public const string REQ_CURRENT_RANK = "REQ_CURRENT_RANK";
         //爬塔状态改变
         public const string FieldWork_StateCHANGE = "FieldWork_StateCHANGE";
+        //转盘数据改变
+        public const string TurnTable_DateCHANGE = "TurnTable_DateCHANGE";
     }
 }

+ 1 - 0
GameClient/Assets/Game/HotUpdate/Controller/GameController.cs

@@ -241,6 +241,7 @@ namespace GFGGame
             GameGlobal.AfterDataInited = true;
             EventAgent.DispatchEvent(ConstMessage.AFTER_DATA_INITED);
 
+            ActivitySProxy.ReqGetTurnTableInfo().Coroutine();
             ItemProxy.GetItemAttributeInfos().Coroutine();
             ItemProxy.ReqGetItemCollect().Coroutine();
             MainStorySProxy.GetStoryBonusInfos().Coroutine();

+ 26 - 0
GameClient/Assets/Game/HotUpdate/Data/ActivityDataManager.cs

@@ -415,5 +415,31 @@ namespace GFGGame
             }
             return false;
         }
+        /***************************转盘活动*******************************/
+        public bool CHECK_TIPS_OPEN = false;
+        public int TurnTableActivityType = 102; 
+        public int TurnTableTimes = 300;
+        public int TipsDropId = 0;
+        public int StartDropId = 40000002;
+        public List<int> GiftBagIdList = new List<int>() { };
+        //奖励状态
+        public Dictionary<int, int> TurnRewardStateDic = new Dictionary<int, int>();
+        //抽奖结果
+        public Dictionary<int, List<ItemInfoProto>> threeTurnResult = new Dictionary<int, List<ItemInfoProto>>() {};
+        public List<ItemInfoProto> TurnRewardList = new List<ItemInfoProto>();
+        public List<ItemInfoProto> TurnSpecialRewardList = new List<ItemInfoProto>();
+        public bool TurnTableRewardRed()
+        {
+            foreach(var item in TurnRewardStateDic)
+            {
+                if(item.Value == 1)
+                {
+                    return true;
+                }
+            }
+            return false;
+        }
+        /*****************************************************************/
+        public string PhoneNum = "";
     }
 }

+ 18 - 21
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityGetYuanXiao/UI_ActivityGetYuanXiaoEntryUI.cs

@@ -8,20 +8,19 @@ namespace UI.ActivityGetYuanXiao
     {
         public GComponent target;
         public GLoader m_loaBg;
-        public GGraph m_bgEffect;
-        public GGraph m_leafEffect;
-        public GGraph m_yuanXiaoEffect;
         public GGraph m_doubaoEffect;
+        public GGraph m_titleTextEffect;
+        public GButton m_btnStart;
+        public GGraph m_startBtnEffect;
+        public GTextField m_txtTime;
+        public GGraph m_yuanXiaoEffect;
         public GButton m_btnTask;
         public GButton m_btnShop;
         public GGraph m_cloudEffect;
         public GList m_list;
-        public GGraph m_startBtnEffect;
-        public GGraph m_titleTextEffect;
         public GComponent m_valueBar;
+        public GGraph m_bgEffect;
         public GButton m_btnBack;
-        public GGraph m_btnStart;
-        public GTextField m_txtTime;
         public Transition m_t0;
         public Transition m_listShow;
         public const string URL = "ui://tguohf7uqkvg4";
@@ -72,40 +71,38 @@ namespace UI.ActivityGetYuanXiao
         private void Init(GComponent comp)
         {
             m_loaBg = (GLoader)comp.GetChild("loaBg");
-            m_bgEffect = (GGraph)comp.GetChild("bgEffect");
-            m_leafEffect = (GGraph)comp.GetChild("leafEffect");
-            m_yuanXiaoEffect = (GGraph)comp.GetChild("yuanXiaoEffect");
             m_doubaoEffect = (GGraph)comp.GetChild("doubaoEffect");
+            m_titleTextEffect = (GGraph)comp.GetChild("titleTextEffect");
+            m_btnStart = (GButton)comp.GetChild("btnStart");
+            m_startBtnEffect = (GGraph)comp.GetChild("startBtnEffect");
+            m_txtTime = (GTextField)comp.GetChild("txtTime");
+            m_yuanXiaoEffect = (GGraph)comp.GetChild("yuanXiaoEffect");
             m_btnTask = (GButton)comp.GetChild("btnTask");
             m_btnShop = (GButton)comp.GetChild("btnShop");
             m_cloudEffect = (GGraph)comp.GetChild("cloudEffect");
             m_list = (GList)comp.GetChild("list");
-            m_startBtnEffect = (GGraph)comp.GetChild("startBtnEffect");
-            m_titleTextEffect = (GGraph)comp.GetChild("titleTextEffect");
             m_valueBar = (GComponent)comp.GetChild("valueBar");
+            m_bgEffect = (GGraph)comp.GetChild("bgEffect");
             m_btnBack = (GButton)comp.GetChild("btnBack");
-            m_btnStart = (GGraph)comp.GetChild("btnStart");
-            m_txtTime = (GTextField)comp.GetChild("txtTime");
             m_t0 = comp.GetTransition("t0");
             m_listShow = comp.GetTransition("listShow");
         }
         public void Dispose(bool disposeTarget = false)
         {
             m_loaBg = null;
-            m_bgEffect = null;
-            m_leafEffect = null;
-            m_yuanXiaoEffect = null;
             m_doubaoEffect = null;
+            m_titleTextEffect = null;
+            m_btnStart = null;
+            m_startBtnEffect = null;
+            m_txtTime = null;
+            m_yuanXiaoEffect = null;
             m_btnTask = null;
             m_btnShop = null;
             m_cloudEffect = null;
             m_list = null;
-            m_startBtnEffect = null;
-            m_titleTextEffect = null;
             m_valueBar = null;
+            m_bgEffect = null;
             m_btnBack = null;
-            m_btnStart = null;
-            m_txtTime = null;
             m_t0 = null;
             m_listShow = null;
             if(disposeTarget && target != null)

+ 74 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityGetYuanXiao/UI_RewardTipsUI.cs

@@ -0,0 +1,74 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.ActivityGetYuanXiao
+{
+    public partial class UI_RewardTipsUI
+    {
+        public GComponent target;
+        public GList m_rewardList;
+        public Transition m_t0;
+        public const string URL = "ui://tguohf7uuufi3m";
+        public const string PACKAGE_NAME = "ActivityGetYuanXiao";
+        public const string RES_NAME = "RewardTipsUI";
+        private static UI_RewardTipsUI _proxy;
+
+        public static UI_RewardTipsUI Create(GObject gObject = null)
+        {
+            var ui = new UI_RewardTipsUI();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_RewardTipsUI Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_RewardTipsUI();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_rewardList = (GList)comp.GetChild("rewardList");
+            m_t0 = comp.GetTransition("t0");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_rewardList = null;
+            m_t0 = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityGetYuanXiao/UI_RewardTipsUI.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: a9c5cbdc6c132c44fb3a724dabbfcd8f
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 4 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_MainUI.cs

@@ -31,6 +31,7 @@ namespace UI.Main
         public UI_BtnModle2 m_btnActivityZCJB;
         public UI_BtnModle2 m_btnGetYuanXiao;
         public UI_BtnModle2 m_btnActivityFYJY;
+        public UI_BtnModle2 m_btnActivityZQ;
         public GTextField m_serverTime;
         public GLoader m_loaGuidestudio;
         public UI_ComAd m_comListAd;
@@ -128,6 +129,7 @@ namespace UI.Main
             m_btnActivityZCJB = (UI_BtnModle2)UI_BtnModle2.Create(comp.GetChild("btnActivityZCJB"));
             m_btnGetYuanXiao = (UI_BtnModle2)UI_BtnModle2.Create(comp.GetChild("btnGetYuanXiao"));
             m_btnActivityFYJY = (UI_BtnModle2)UI_BtnModle2.Create(comp.GetChild("btnActivityFYJY"));
+            m_btnActivityZQ = (UI_BtnModle2)UI_BtnModle2.Create(comp.GetChild("btnActivityZQ"));
             m_serverTime = (GTextField)comp.GetChild("serverTime");
             m_loaGuidestudio = (GLoader)comp.GetChild("loaGuidestudio");
             m_comListAd = (UI_ComAd)UI_ComAd.Create(comp.GetChild("comListAd"));
@@ -194,6 +196,8 @@ namespace UI.Main
             m_btnGetYuanXiao = null;
             m_btnActivityFYJY.Dispose();
             m_btnActivityFYJY = null;
+            m_btnActivityZQ.Dispose();
+            m_btnActivityZQ = null;
             m_serverTime = null;
             m_loaGuidestudio = null;
             m_comListAd.Dispose();

+ 3 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/RoleInfo/UI_PhoneBindingUI.cs

@@ -15,6 +15,7 @@ namespace UI.RoleInfo
         public UI_Button19 m_btnSure;
         public GTextField m_inputConfirmCode;
         public GButton m_btnGetCode;
+        public GLoader m_countTime;
         public GButton m_btnClose;
         public GLoader m_icon;
         public const string URL = "ui://374k3dwvr8a09fze";
@@ -72,6 +73,7 @@ namespace UI.RoleInfo
             m_btnSure = (UI_Button19)UI_Button19.Create(comp.GetChild("btnSure"));
             m_inputConfirmCode = (GTextField)comp.GetChild("inputConfirmCode");
             m_btnGetCode = (GButton)comp.GetChild("btnGetCode");
+            m_countTime = (GLoader)comp.GetChild("countTime");
             m_btnClose = (GButton)comp.GetChild("btnClose");
             m_icon = (GLoader)comp.GetChild("icon");
         }
@@ -86,6 +88,7 @@ namespace UI.RoleInfo
             m_btnSure = null;
             m_inputConfirmCode = null;
             m_btnGetCode = null;
+            m_countTime = null;
             m_btnClose = null;
             m_icon = null;
             if(disposeTarget && target != null)

+ 8 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 6771f60f81a2a1640852fc56521743bf
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 71 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_ComRewardList.cs

@@ -0,0 +1,71 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.TurnTable
+{
+    public partial class UI_ComRewardList
+    {
+        public GComponent target;
+        public GList m_listReward;
+        public const string URL = "ui://zioq0m8xuufi1o";
+        public const string PACKAGE_NAME = "TurnTable";
+        public const string RES_NAME = "ComRewardList";
+        private static UI_ComRewardList _proxy;
+
+        public static UI_ComRewardList Create(GObject gObject = null)
+        {
+            var ui = new UI_ComRewardList();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_ComRewardList Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ComRewardList();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_listReward = (GList)comp.GetChild("listReward");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_listReward = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_ComRewardList.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 56b7d6e179da4ff44b291718fba08fd1
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 103 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_Component1.cs

@@ -0,0 +1,103 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.TurnTable
+{
+    public partial class UI_Component1
+    {
+        public GComponent target;
+        public GProgressBar m_bar;
+        public UI_reward m_itemj0;
+        public UI_reward m_itemj1;
+        public UI_reward m_itemj2;
+        public UI_reward m_itemj3;
+        public UI_reward m_itemj4;
+        public UI_reward m_itemj5;
+        public UI_reward m_itemj6;
+        public UI_reward m_itemj7;
+        public const string URL = "ui://zioq0m8xqncf1d";
+        public const string PACKAGE_NAME = "TurnTable";
+        public const string RES_NAME = "Component1";
+        private static UI_Component1 _proxy;
+
+        public static UI_Component1 Create(GObject gObject = null)
+        {
+            var ui = new UI_Component1();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_Component1 Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_Component1();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_bar = (GProgressBar)comp.GetChild("bar");
+            m_itemj0 = (UI_reward)UI_reward.Create(comp.GetChild("itemj0"));
+            m_itemj1 = (UI_reward)UI_reward.Create(comp.GetChild("itemj1"));
+            m_itemj2 = (UI_reward)UI_reward.Create(comp.GetChild("itemj2"));
+            m_itemj3 = (UI_reward)UI_reward.Create(comp.GetChild("itemj3"));
+            m_itemj4 = (UI_reward)UI_reward.Create(comp.GetChild("itemj4"));
+            m_itemj5 = (UI_reward)UI_reward.Create(comp.GetChild("itemj5"));
+            m_itemj6 = (UI_reward)UI_reward.Create(comp.GetChild("itemj6"));
+            m_itemj7 = (UI_reward)UI_reward.Create(comp.GetChild("itemj7"));
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_bar = null;
+            m_itemj0.Dispose();
+            m_itemj0 = null;
+            m_itemj1.Dispose();
+            m_itemj1 = null;
+            m_itemj2.Dispose();
+            m_itemj2 = null;
+            m_itemj3.Dispose();
+            m_itemj3 = null;
+            m_itemj4.Dispose();
+            m_itemj4 = null;
+            m_itemj5.Dispose();
+            m_itemj5 = null;
+            m_itemj6.Dispose();
+            m_itemj6 = null;
+            m_itemj7.Dispose();
+            m_itemj7 = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_Component1.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: af1adb360986e094d91b09a53566af05
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 71 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_TurnSpecialTipsUI.cs

@@ -0,0 +1,71 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.TurnTable
+{
+    public partial class UI_TurnSpecialTipsUI
+    {
+        public GComponent target;
+        public GList m_list;
+        public const string URL = "ui://zioq0m8xqncf1j";
+        public const string PACKAGE_NAME = "TurnTable";
+        public const string RES_NAME = "TurnSpecialTipsUI";
+        private static UI_TurnSpecialTipsUI _proxy;
+
+        public static UI_TurnSpecialTipsUI Create(GObject gObject = null)
+        {
+            var ui = new UI_TurnSpecialTipsUI();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_TurnSpecialTipsUI Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_TurnSpecialTipsUI();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_list = (GList)comp.GetChild("list");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_list = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_TurnSpecialTipsUI.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: f628605b000f09b429502833ec379def
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 96 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_TurnTableRewardUI.cs

@@ -0,0 +1,96 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.TurnTable
+{
+    public partial class UI_TurnTableRewardUI
+    {
+        public GComponent target;
+        public GGraph m_mask;
+        public GGraph m_bgEffect;
+        public GGraph m_bgEffect1;
+        public GGraph m_holderBgCom;
+        public GGraph m_holderTitle;
+        public GGroup m_downTipsText;
+        public UI_ComRewardList m_comList;
+        public GGroup m_grp;
+        public Transition m_openViewAction;
+        public const string URL = "ui://zioq0m8xuufi1n";
+        public const string PACKAGE_NAME = "TurnTable";
+        public const string RES_NAME = "TurnTableRewardUI";
+        private static UI_TurnTableRewardUI _proxy;
+
+        public static UI_TurnTableRewardUI Create(GObject gObject = null)
+        {
+            var ui = new UI_TurnTableRewardUI();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_TurnTableRewardUI Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_TurnTableRewardUI();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_mask = (GGraph)comp.GetChild("mask");
+            m_bgEffect = (GGraph)comp.GetChild("bgEffect");
+            m_bgEffect1 = (GGraph)comp.GetChild("bgEffect1");
+            m_holderBgCom = (GGraph)comp.GetChild("holderBgCom");
+            m_holderTitle = (GGraph)comp.GetChild("holderTitle");
+            m_downTipsText = (GGroup)comp.GetChild("downTipsText");
+            m_comList = (UI_ComRewardList)UI_ComRewardList.Create(comp.GetChild("comList"));
+            m_grp = (GGroup)comp.GetChild("grp");
+            m_openViewAction = comp.GetTransition("openViewAction");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_mask = null;
+            m_bgEffect = null;
+            m_bgEffect1 = null;
+            m_holderBgCom = null;
+            m_holderTitle = null;
+            m_downTipsText = null;
+            m_comList.Dispose();
+            m_comList = null;
+            m_grp = null;
+            m_openViewAction = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_TurnTableRewardUI.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: abad60ae38a10e34c97a8910ccc8df6d
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 190 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_TurnTableUI.cs

@@ -0,0 +1,190 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.TurnTable
+{
+    public partial class UI_TurnTableUI
+    {
+        public GComponent target;
+        public GLoader m_bg;
+        public GGraph m_bgEffect;
+        public GGraph m_bgEffec1;
+        public GLoader m_iconBg;
+        public UI_rewardItem m_item0;
+        public UI_rewardItem m_item1;
+        public UI_rewardItem m_item2;
+        public UI_rewardItem m_item3;
+        public UI_rewardItem m_item4;
+        public UI_rewardItem m_item5;
+        public UI_rewardItem m_item6;
+        public UI_rewardItem m_item7;
+        public UI_rewardItem m_item8;
+        public UI_rewardItem m_item9;
+        public GLoader m_pointer2;
+        public GLoader m_pointer1;
+        public GLoader m_pointer0;
+        public GLoader m_rewardIcon;
+        public GGraph m_specialEffect;
+        public UI_Component1 m_reward;
+        public GLoader m_numberBg;
+        public GTextField m_numberText;
+        public GButton m_btnStartOne;
+        public GGraph m_btnEffectOne;
+        public GButton m_btnStartThree;
+        public GGraph m_btnEffectThree;
+        public GTextField m_timeText;
+        public GButton m_ruleBtn;
+        public GGraph m_titleEffect;
+        public GButton m_shopBtn;
+        public GButton m_giftBtn;
+        public GTextField m_giftTimeText;
+        public GGroup m_gift;
+        public GComponent m_valueBar;
+        public GGraph m_bgEffec2;
+        public GGraph m_bgEffec3;
+        public GButton m_btnBack;
+        public const string URL = "ui://zioq0m8xtvgdg";
+        public const string PACKAGE_NAME = "TurnTable";
+        public const string RES_NAME = "TurnTableUI";
+        private static UI_TurnTableUI _proxy;
+
+        public static UI_TurnTableUI Create(GObject gObject = null)
+        {
+            var ui = new UI_TurnTableUI();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_TurnTableUI Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_TurnTableUI();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_bg = (GLoader)comp.GetChild("bg");
+            m_bgEffect = (GGraph)comp.GetChild("bgEffect");
+            m_bgEffec1 = (GGraph)comp.GetChild("bgEffec1");
+            m_iconBg = (GLoader)comp.GetChild("iconBg");
+            m_item0 = (UI_rewardItem)UI_rewardItem.Create(comp.GetChild("item0"));
+            m_item1 = (UI_rewardItem)UI_rewardItem.Create(comp.GetChild("item1"));
+            m_item2 = (UI_rewardItem)UI_rewardItem.Create(comp.GetChild("item2"));
+            m_item3 = (UI_rewardItem)UI_rewardItem.Create(comp.GetChild("item3"));
+            m_item4 = (UI_rewardItem)UI_rewardItem.Create(comp.GetChild("item4"));
+            m_item5 = (UI_rewardItem)UI_rewardItem.Create(comp.GetChild("item5"));
+            m_item6 = (UI_rewardItem)UI_rewardItem.Create(comp.GetChild("item6"));
+            m_item7 = (UI_rewardItem)UI_rewardItem.Create(comp.GetChild("item7"));
+            m_item8 = (UI_rewardItem)UI_rewardItem.Create(comp.GetChild("item8"));
+            m_item9 = (UI_rewardItem)UI_rewardItem.Create(comp.GetChild("item9"));
+            m_pointer2 = (GLoader)comp.GetChild("pointer2");
+            m_pointer1 = (GLoader)comp.GetChild("pointer1");
+            m_pointer0 = (GLoader)comp.GetChild("pointer0");
+            m_rewardIcon = (GLoader)comp.GetChild("rewardIcon");
+            m_specialEffect = (GGraph)comp.GetChild("specialEffect");
+            m_reward = (UI_Component1)UI_Component1.Create(comp.GetChild("reward"));
+            m_numberBg = (GLoader)comp.GetChild("numberBg");
+            m_numberText = (GTextField)comp.GetChild("numberText");
+            m_btnStartOne = (GButton)comp.GetChild("btnStartOne");
+            m_btnEffectOne = (GGraph)comp.GetChild("btnEffectOne");
+            m_btnStartThree = (GButton)comp.GetChild("btnStartThree");
+            m_btnEffectThree = (GGraph)comp.GetChild("btnEffectThree");
+            m_timeText = (GTextField)comp.GetChild("timeText");
+            m_ruleBtn = (GButton)comp.GetChild("ruleBtn");
+            m_titleEffect = (GGraph)comp.GetChild("titleEffect");
+            m_shopBtn = (GButton)comp.GetChild("shopBtn");
+            m_giftBtn = (GButton)comp.GetChild("giftBtn");
+            m_giftTimeText = (GTextField)comp.GetChild("giftTimeText");
+            m_gift = (GGroup)comp.GetChild("gift");
+            m_valueBar = (GComponent)comp.GetChild("valueBar");
+            m_bgEffec2 = (GGraph)comp.GetChild("bgEffec2");
+            m_bgEffec3 = (GGraph)comp.GetChild("bgEffec3");
+            m_btnBack = (GButton)comp.GetChild("btnBack");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_bg = null;
+            m_bgEffect = null;
+            m_bgEffec1 = null;
+            m_iconBg = null;
+            m_item0.Dispose();
+            m_item0 = null;
+            m_item1.Dispose();
+            m_item1 = null;
+            m_item2.Dispose();
+            m_item2 = null;
+            m_item3.Dispose();
+            m_item3 = null;
+            m_item4.Dispose();
+            m_item4 = null;
+            m_item5.Dispose();
+            m_item5 = null;
+            m_item6.Dispose();
+            m_item6 = null;
+            m_item7.Dispose();
+            m_item7 = null;
+            m_item8.Dispose();
+            m_item8 = null;
+            m_item9.Dispose();
+            m_item9 = null;
+            m_pointer2 = null;
+            m_pointer1 = null;
+            m_pointer0 = null;
+            m_rewardIcon = null;
+            m_specialEffect = null;
+            m_reward.Dispose();
+            m_reward = null;
+            m_numberBg = null;
+            m_numberText = null;
+            m_btnStartOne = null;
+            m_btnEffectOne = null;
+            m_btnStartThree = null;
+            m_btnEffectThree = null;
+            m_timeText = null;
+            m_ruleBtn = null;
+            m_titleEffect = null;
+            m_shopBtn = null;
+            m_giftBtn = null;
+            m_giftTimeText = null;
+            m_gift = null;
+            m_valueBar = null;
+            m_bgEffec2 = null;
+            m_bgEffec3 = null;
+            m_btnBack = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_TurnTableUI.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 39712b9cb90e42d49a43ac3994d4c53b
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 80 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_reward.cs

@@ -0,0 +1,80 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.TurnTable
+{
+    public partial class UI_reward
+    {
+        public GComponent target;
+        public Controller m_c1;
+        public GLoader m_icon;
+        public GTextField m_numText;
+        public GGraph m_effect;
+        public const string URL = "ui://zioq0m8xqncf1a";
+        public const string PACKAGE_NAME = "TurnTable";
+        public const string RES_NAME = "reward";
+        private static UI_reward _proxy;
+
+        public static UI_reward Create(GObject gObject = null)
+        {
+            var ui = new UI_reward();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_reward Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_reward();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_c1 = comp.GetController("c1");
+            m_icon = (GLoader)comp.GetChild("icon");
+            m_numText = (GTextField)comp.GetChild("numText");
+            m_effect = (GGraph)comp.GetChild("effect");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_c1 = null;
+            m_icon = null;
+            m_numText = null;
+            m_effect = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_reward.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 26c2be5aeed9dc44a8046da99895b968
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 83 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_rewardItem.cs

@@ -0,0 +1,83 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.TurnTable
+{
+    public partial class UI_rewardItem
+    {
+        public GComponent target;
+        public Controller m_c1;
+        public GLoader m_iconBg;
+        public GLoader m_icon;
+        public GTextField m_numText;
+        public GGraph m_effect;
+        public const string URL = "ui://zioq0m8xqncf19";
+        public const string PACKAGE_NAME = "TurnTable";
+        public const string RES_NAME = "rewardItem";
+        private static UI_rewardItem _proxy;
+
+        public static UI_rewardItem Create(GObject gObject = null)
+        {
+            var ui = new UI_rewardItem();
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_rewardItem Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_rewardItem();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GComponent)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static void ProxyEnd()
+        {
+            if (_proxy != null)
+            {
+                _proxy.Dispose();
+            }
+        }
+
+        public static void ClearProxy()
+        {
+            ProxyEnd();
+            _proxy = null;
+        }
+
+        private void Init(GComponent comp)
+        {
+            m_c1 = comp.GetController("c1");
+            m_iconBg = (GLoader)comp.GetChild("iconBg");
+            m_icon = (GLoader)comp.GetChild("icon");
+            m_numText = (GTextField)comp.GetChild("numText");
+            m_effect = (GGraph)comp.GetChild("effect");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_c1 = null;
+            m_iconBg = null;
+            m_icon = null;
+            m_numText = null;
+            m_effect = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TurnTable/UI_rewardItem.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 03ec5d9986ed47c42836f1d52171411b
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 102 - 0
GameClient/Assets/Game/HotUpdate/ServerProxy/ActivitySProxy.cs

@@ -428,6 +428,108 @@ namespace GFGGame
                 //
             }
         }
+        //获取转盘活动信息
+        public static async ETTask<bool> ReqGetTurnTableInfo()
+        {
+            S2C_GetWishingActivityInfo response = null;
+            int id = ActivityDataManager.Instance.GetCurOpenActiveByType(ActivityDataManager.Instance.TurnTableActivityType);
+            if (id == 0)
+            {
+                return false;
+            }
+            response = (S2C_GetWishingActivityInfo)await MessageHelper.SendToServer(new C2S_GetWishingActivityInfo() {AcitvityId = id });
+            if (response != null)
+            {
+                if (response.Error == ErrorCode.ERR_Success)
+                {
+                    ActivityDataManager.Instance.TurnRewardStateDic.Clear();
+                    ActivityDataManager.Instance.TurnTableTimes = response.SpecialTotalNum;
+                    ActivityDataManager.Instance.StartDropId = response.ExtraIdDropId;
+                    ActivityDataManager.Instance.TipsDropId = response.ExtraIdDropId;
+                    ActivityDataManager.Instance.GiftBagIdList = response.WishingBags;
+                    for (int i = 0;i<response.RewardIds.Count;i++)
+                    {
+                        ActivityDataManager.Instance.TurnRewardStateDic.Add(response.RewardIds[i],response.RewardStatus[i]);
+                    }
+                    return true;
+                }
+            }
+            return false;
+        }
+        public static async ETTask<bool> ReqTurnTableWish(int wishType)
+        {
+            S2C_WishingLuckyBox response = null;
+            int id = ActivityDataManager.Instance.GetCurOpenActiveByType(ActivityDataManager.Instance.TurnTableActivityType);
+            response = (S2C_WishingLuckyBox)await MessageHelper.SendToServer(new C2S_WishingLuckyBox() { AcitvityId = id,WishingType = wishType });
+            if (response != null)
+            {
+                if (response.Error == ErrorCode.ERR_Success)
+                {
+                    ActivityDataManager.Instance.TurnRewardStateDic.Clear();
+                    ActivityDataManager.Instance.threeTurnResult.Clear();
+                    ActivityDataManager.Instance.TurnTableTimes = response.SpecialTotalNum;
+                    ActivityDataManager.Instance.TipsDropId = response.ExtraIdDropId;
+                    ActivityDataManager.Instance.GiftBagIdList = response.WishingBags;
+                    for (int i = 0; i < response.RewardIds.Count; i++)
+                    {
+                        ActivityDataManager.Instance.TurnRewardStateDic.Add(response.RewardIds[i], response.RewardStatus[i]);
+                    }
+                    if(response.RewardList.Count == 3)
+                    {                  
+                        ActivityDataManager.Instance.threeTurnResult.Add(0, response.RewardList);                     
+                    }
+                    else if(response.RewardList.Count == 9 )
+                    {
+                            List<ItemInfoProto> infoOneList = new List<ItemInfoProto>();
+                        List<ItemInfoProto> infoTwoList = new List<ItemInfoProto>();
+                        List<ItemInfoProto> infoThreeList = new List<ItemInfoProto>();
+                        for (int i = 0; i < response.RewardList.Count; i++)
+                        {
+                            if(i<3)
+                            {
+                                infoOneList.Add(response.RewardList[i]);
+                            }
+                            else if(i>=3 && i<6)
+                            {
+                                infoTwoList.Add(response.RewardList[i]);
+                            }
+                            else if(i >=6)
+                            {
+                                infoThreeList.Add(response.RewardList[i]);
+                            }
+                        }
+                        ActivityDataManager.Instance.threeTurnResult.Add(0, infoOneList);
+                        ActivityDataManager.Instance.threeTurnResult.Add(1, infoTwoList);
+                        ActivityDataManager.Instance.threeTurnResult.Add(2, infoThreeList);
+                    }
+                    ActivityDataManager.Instance.TurnRewardList = response.RewardList;
+                    ActivityDataManager.Instance.TurnSpecialRewardList = response.SpecialRewardList;
+                    return true;
+                }
+            }
+            return false;
+        }
+        //获取领取转盘奖励
+        public static async ETTask<bool> ReqGetTurnTableReward(int rewardId)
+        {
+            S2C_GetWishingRewards response = null;
+            response = (S2C_GetWishingRewards)await MessageHelper.SendToServer(new C2S_GetWishingRewards() { RewardId = rewardId });
+            if (response != null)
+            {
+                if (response.Error == ErrorCode.ERR_Success)
+                {
+                    ActivityDataManager.Instance.TurnRewardStateDic.Clear();
+                    for (int i = 0; i < response.RewardIds.Count; i++)
+                    {
+                        ActivityDataManager.Instance.TurnRewardStateDic.Add(response.RewardIds[i], response.RewardStatus[i]);
+                    }
+                    BonusController.TryShowBonusList(ItemUtil.CreateItemDataList(response.RewardList));
+                    EventAgent.DispatchEvent(ConstMessage.TurnTable_DateCHANGE);
+                    return true;
+                }
+            }
+            return false;
+        }
     }
 
 

+ 13 - 0
GameClient/Assets/Game/HotUpdate/ServerProxy/RoleInfoSProxy.cs

@@ -284,5 +284,18 @@ namespace GFGGame
             MainDataManager.Instance.CardBgID = 0;
             return true;
         }
+        //绑定获取验证码
+        public static async ETTask<bool> GetMobileVerification(string phoneNumber)
+        {
+            S2C_GetMobileVerificationCodeUnit response = (S2C_GetMobileVerificationCodeUnit)await MessageHelper.SendToServer(new C2S_GetMobileVerificationCodeUnit() { PhoneNumber = phoneNumber});
+            return true;
+        }
+        //绑定手机
+        public static async ETTask<bool> BindMobilePhoneNumber(string phoneNumber,string code)
+        {
+            S2C_BindMobilePhoneNumber response = (S2C_BindMobilePhoneNumber)await MessageHelper.SendToServer(new C2S_BindMobilePhoneNumber() { PhoneNumber = phoneNumber ,VerCode = code});
+            BonusController.TryShowBonusList(ItemUtil.CreateItemDataList(response.RewardList));
+            return true;
+        }
     }
 }

+ 26 - 12
GameClient/Assets/Game/HotUpdate/Views/ActivityGetYuanXiao/ActivityGetYuanXiaoEntryView.cs

@@ -11,6 +11,7 @@ namespace GFGGame
     public class ActivityGetYuanXiaoEntryView : BaseView
     {
         private UI_ActivityGetYuanXiaoEntryUI _ui;
+        private int index;
         private ValueBarController _valueBarController;
         private Dictionary<string, EffectUI> _effectUIDic = new Dictionary<string, EffectUI>();
         private int _curLevel;
@@ -46,7 +47,7 @@ namespace GFGGame
             _ui = UI_ActivityGetYuanXiaoEntryUI.Create();
             viewCom = _ui.target;
             isReturnView = true;
-            _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("hd_yx_bg");
+            _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("xyx_clfg_bg");
 
             _valueBarController = new ValueBarController(_ui.m_valueBar);
             _ui.m_list.itemRenderer = ListRenderer;
@@ -69,7 +70,7 @@ namespace GFGGame
             {
                 return;
             }
-
+            _ui.m_doubaoEffect.SetScale(1, 1);
             _ui.m_list.visible = true;
             _valueBarController.UpdateList(new List<int>() { ConstItemID.YUANXIAO_REWARD, ConstItemID.YUANXIAO_GAME_CONSUME });
             _ui.m_listShow.Play();
@@ -78,7 +79,7 @@ namespace GFGGame
             _ui.m_list.selectedIndex = Mathf.Min(_curLevel, ActivityGetYuanXiaoDataManager.Instance.gameinfoList.Count - 1);
             AutoLocationCurLevel();
             UpdateRedDots();
-
+            index = _ui.m_list.selectedIndex;
             UpdateTime(null);
             Timers.inst.Remove(UpdateTime);
             Timers.inst.Add(1, 0, UpdateTime);
@@ -111,7 +112,7 @@ namespace GFGGame
             UI_level level = UI_level.Proxy(item);
             PickUpGame pickUpGame = PickUpGameArray.Instance.dataArray[index];
             level.m_spendIcon.url = ResPathUtil.GetIconPath(ItemCfgArray.Instance.GetCfg(pickUpGame.comsumePassArr[0][0]).res, "png");
-            level.m_iconLevel.url = string.Format("ui://ActivityGetYuanXiao/yx_xg_{0}", index % 4 + 1);
+            level.m_iconLevel.url = string.Format("ui://ActivityGetYuanXiao/clfg_xg_{0}", index % 4 + 1);
             level.m_num.text = pickUpGame.comsumePassArr[0][1].ToString();
 
             int stateIndex = 0;
@@ -124,10 +125,23 @@ namespace GFGGame
                 stateIndex = 2;
             }
             level.m_c1.selectedIndex = stateIndex;
-
+            level.target.onClick.Add(OnBtnClick);
+            
             UI_level.ProxyEnd();
         }
-
+        private void OnBtnClick(EventContext context)
+        {
+            GObject gObject = context.sender as GObject;
+            int id = (int)gObject.data;
+            if(id != index)
+            {
+                index = id;
+                return;
+            }
+            index = id;
+            PickUpGame cfg= PickUpGameArray.Instance.dataArray[id];
+            ViewManager.Show<ActivityZLFGRewardTips>(cfg);
+        }    
         private void OnBtnStartClick()
         {
             int activityID = ActivityDataManager.Instance.GetCurOpenActiveByType(ActivityType.YuanXiao);
@@ -215,13 +229,13 @@ namespace GFGGame
 
         private void AddEffect()
         {
-            _effectUIDic.Add("YXJ_bg_tx", EffectUIPool.CreateEffectUI(_ui.m_bgEffect, "ui_Activity", "YXJ_bg_tx"));
-            _effectUIDic.Add("YXJ_Button", EffectUIPool.CreateEffectUI(_ui.m_startBtnEffect, "ui_Activity", "YXJ_Button"));
-            _effectUIDic.Add("YXJ_Middle", EffectUIPool.CreateEffectUI(_ui.m_yuanXiaoEffect, "ui_Activity", "YXJ_Middle"));
-            _effectUIDic.Add("YXJ_Text", EffectUIPool.CreateEffectUI(_ui.m_titleTextEffect, "ui_Activity", "YXJ_Text"));
+            _effectUIDic.Add("YXJ_bg_tx", EffectUIPool.CreateEffectUI(_ui.m_bgEffect, "ui_Activity", "CLFG_BG_TX/CLFG_BG_TX "));
+            _effectUIDic.Add("YXJ_Button", EffectUIPool.CreateEffectUI(_ui.m_startBtnEffect, "ui_Activity", "CLFG_Start_Button/CLFG_Start_Button"));
+            //_effectUIDic.Add("YXJ_Middle", EffectUIPool.CreateEffectUI(_ui.m_yuanXiaoEffect, "ui_Activity", "YXJ_Middle"));
+            _effectUIDic.Add("YXJ_Text", EffectUIPool.CreateEffectUI(_ui.m_titleTextEffect, "ui_Activity", "CLFG_Text/CLFG_Text"));
             _effectUIDic.Add("YXJ_Open_Down", EffectUIPool.CreateEffectUI(_ui.m_cloudEffect, "ui_Activity", "YXJ_Open_Down"));
-            _effectUIDic.Add("YXJ_Open_Up", EffectUIPool.CreateEffectUI(_ui.m_leafEffect, "ui_Activity", "YXJ_Open_Up"));
-            _effectUIDic.Add("RedPack_doubao_Loop_R", EffectUIPool.CreateEffectUI(_ui.m_doubaoEffect, "ui_Activity", "RedPack_doubao_Loop_R"));
+            //_effectUIDic.Add("YXJ_Open_Up", EffectUIPool.CreateEffectUI(_ui.m_leafEffect, "ui_Activity", "YXJ_Open_Up"));
+            _effectUIDic.Add("RedPack_doubao_Loop_R", EffectUIPool.CreateEffectUI(_ui.m_doubaoEffect, "ui_Activity", "CLFG_Mid_Anma/CLFG_Mid_Anma"));
         }
 
         private void AutoLocationCurLevel()

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Views/ActivityGetYuanXiao/ActivityGetYuanXiaoTargetView.cs

@@ -67,7 +67,7 @@ namespace GFGGame
         private void CollectionListRenderer(int index, GObject obj)
         {
             UI_gameTarget target = UI_gameTarget.Proxy(obj);
-            target.m_iconType.url = string.Format("ui://ActivityGetYuanXiao/yx_icon_{0}", _cfg.targetIdArr[index][0]);
+            target.m_iconType.url = string.Format("ui://ActivityGetYuanXiao/clfg_icon_{0}", _cfg.targetIdArr[index][0]);
             int num = _cfg.targetIdArr[index][1];
             target.m_num.text = num.ToString();
             UI_gameTarget.ProxyEnd();

+ 2 - 2
GameClient/Assets/Game/HotUpdate/Views/ActivityGetYuanXiao/ActivityGetYuanXiaoView.cs

@@ -47,7 +47,7 @@ namespace GFGGame
             _ui = UI_ActivityGetYuanXiaoUI.Create();
             viewCom = _ui.target;
             isReturnView = true;
-            _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("hd_yx_bg_2");
+            _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("xyx_clfg_bg1");
             _ui.m_collectList.itemRenderer = CollectListRenderer;
             _ui.m_btnBack.onClick.Add(OnBtnBack);
 
@@ -406,7 +406,7 @@ namespace GFGGame
         private void CollectListRenderer(int index, GObject item)
         {
             UI_targetItem target = UI_targetItem.Proxy(item);
-            target.m_iconType.url = string.Format("ui://ActivityGetYuanXiao/yx_mb_{0}", _cfg.targetIdArr[index][0]);
+            target.m_iconType.url = string.Format("ui://ActivityGetYuanXiao/clfg_mb_{0}", _cfg.targetIdArr[index][0]);
             int num = _collectDict[_cfg.targetIdArr[index][0]];
             if (num == 0)
             {

+ 78 - 0
GameClient/Assets/Game/HotUpdate/Views/ActivityGetYuanXiao/ActivityZLFGRewardTips.cs

@@ -0,0 +1,78 @@
+using FairyGUI;
+using System.Collections;
+using System.Collections.Generic;
+using UI.ActivityGetYuanXiao;
+using UI.CommonGame;
+
+namespace GFGGame
+{
+    class ActivityZLFGRewardTips : BaseWindow
+    {
+        private UI_RewardTipsUI _ui;
+        private PickUpGame _cfg;
+        public override void Dispose()
+        {
+            if (_ui != null)
+            {
+                _ui.Dispose();
+                _ui = null;
+            }
+            base.Dispose();
+        }
+        protected override void OnInit()
+        {
+            base.OnInit();
+            packageName = UI_RewardTipsUI.PACKAGE_NAME;
+            _ui = UI_RewardTipsUI.Create();
+            this.viewCom = _ui.target;
+            modal = true;
+            this.viewCom.Center();
+
+            viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
+            _ui.m_rewardList.itemRenderer = ListItemRender;
+            _ui.m_rewardList.onClickItem.Add(OnListSelectorItemClick);
+        }
+        protected override void OnShown()
+        {
+            base.OnShown();
+            _cfg = (PickUpGame)this.viewData;
+            _ui.m_rewardList.numItems = _cfg.bonusWinArr.Length;
+        }
+        protected override void OnHide()
+        {
+            base.OnHide();
+        }
+        protected override void AddEventListener()
+        {
+            base.AddEventListener();
+        }
+
+        protected override void RemoveEventListener()
+        {
+            base.RemoveEventListener();
+        }
+        private void OnClickChange()
+        {
+            this.Hide();
+        }
+        private void ListItemRender(int index, GObject obj)
+        {
+            UI_ComItem uiItemChild = UI_ComItem.Proxy(obj);
+            var itemCfg = ItemCfgArray.Instance.GetCfg(_cfg.bonusWinArr[index][0]);
+            var itemCfgChild = ItemCfgArray.Instance.GetCfg(_cfg.bonusWinArr[index][0]);
+            uiItemChild.m_loaIcon.url = ResPathUtil.GetIconPath(itemCfgChild);
+            uiItemChild.m_txtCount.text = _cfg.bonusWinArr[index][1].ToString();
+            uiItemChild.target.data = itemCfgChild;
+            uiItemChild.m_QualityType.selectedIndex = itemCfgChild.rarity - 1;
+            UI_ComItem.ProxyEnd();
+        }
+
+        //弹出物品详细描述框
+        private void OnListSelectorItemClick(EventContext context)
+        {
+            GComponent item = context.data as GComponent;
+            ItemCfg itemCfg = item.data as ItemCfg;
+            GoodsItemTipsController.ShowItemTips(itemCfg.id);
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/ActivityGetYuanXiao/ActivityZLFGRewardTips.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: b633ef649e9275448b67564e73951d23
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 6 - 1
GameClient/Assets/Game/HotUpdate/Views/DailyWelfare/DailyWelfareView.cs

@@ -137,11 +137,16 @@ namespace GFGGame
                 item.m_loaTitle.url = "ui://DailyWelfare/hdbn_wz_xslc_xslgt";
                 item.m_loaTitle.visible = false;
             }
-            else if(openCfg.id == 505 || openCfg.type == 10)
+            else if(openCfg.id == 505)
             {
                 item.m_loaIcon.url = ResPathUtil.GetActivityPath("gg_banner_lc_bjh", "png");;
                 item.m_loaTitle.visible = false;
             }
+            else if(openCfg.id == 507)
+            {
+                item.m_loaIcon.url = ResPathUtil.GetActivityPath("gg_banner_lc_aliz", "png"); ;
+                item.m_loaTitle.visible = false;
+            }
             else
             {
                 item.target.visible = false;

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Views/DailyWelfare/NewLimitChargeView.cs

@@ -178,7 +178,7 @@ namespace GFGGame
                 item.m_btnGetGiftBag.onClick.Add(OnBtnGetGiftBagClick);
             }
             item.m_btnGetGiftBag.data = vipCfg.id;
-            bool isGet = MathUtil.isBitSet(GameGlobal.myNumericComponent.GetAsInt(NumericType.VipGetStatus), vipCfg.id);
+            //bool isGet = MathUtil.isBitSet(GameGlobal.myNumericComponent.GetAsInt(NumericType.VipGetStatus), vipCfg.id);
             long limitChargeExp = _activityInfo.CountValue;
             //item.m_btnGetGiftBag.grayed = limitChargeExp < _rechargeCfgs[index].value;
             item.m_txtGiftBag.text = string.Format("活动期间累计获得{0}会员积分({1}/{2})", _rechargeCfgs[index].value, limitChargeExp, _rechargeCfgs[index].value);

+ 5 - 4
GameClient/Assets/Game/HotUpdate/Views/FieldWork/FieldWorkLevelView.cs

@@ -66,7 +66,6 @@ namespace GFGGame
         {
             base.OnShown();
             gamey = GameObject.Find("Stage/GRoot/Window - FieldWorkLevelUI/ContentPane/CompChapter/Container/Container");
-            objGuide = _ui.m_chapter.m_compChapterScroll.target.GetChild("g0").asCom;
             _ui.m_Bg.url = ResPathUtil.GetBgImgPath("bg_tydc");
             _ui.m_shopBtn.target.visible = false;
             LevelList = CimbingTowerLevelCfgArray.Instance.dataArray;
@@ -119,11 +118,13 @@ namespace GFGGame
                     isPassCount++;
                 }
             }
-            int levelCount = CimbingTowerLevelCfgArray.Instance.dataArray.Length - isPassCount;
+            string ObjGuidename = "g" + isPassCount.ToString();
+            objGuide = _ui.m_chapter.m_compChapterScroll.target.GetChild(ObjGuidename).asCom;
+            float levelCount = CimbingTowerLevelCfgArray.Instance.dataArray.Length - isPassCount;
             float height = _ui.m_chapter.target.height;
-            float value = 300 / (_ui.m_chapter.target.height / 1080.0f);
+            float value = levelCount / CimbingTowerLevelCfgArray.Instance.dataArray.Length;
             indexY = value * Mathf.Max(0, (float)levelCount);
-            _ui.m_chapter.target.scrollPane.posY = indexY;
+            _ui.m_chapter.target.scrollPane.SetPercY(value, false);
         }
         private void OnClickLevelItem(EventContext context)
         {

+ 12 - 1
GameClient/Assets/Game/HotUpdate/Views/MainUI/MainUIView.cs

@@ -119,6 +119,7 @@ namespace GFGGame
             _ui.m_btnTea.target.onClick.Add(OnClickBtnTea);
             _ui.m_btnActivityZCJB.target.onClick.Add(OnClickBtnZCJB);
             _ui.m_btnGetYuanXiao.target.onClick.Add(OnClickBtnGetYuanXiao);
+            _ui.m_btnActivityZQ.target.onClick.Add(OnClickBtnGetZhongQiu);
             _ui.m_btnActivityFYJY.target.visible = false;
             _ui.m_btnActivityFYJY.target.onClick.Add(OnClickBtnFYJY);
             _btnLeague.onClick.Add(OnClickBtnLeague);
@@ -337,6 +338,7 @@ namespace GFGGame
         private void RefreshBtnYuanXiaoActivity()
         {
             _ui.m_btnGetYuanXiao.target.visible = ActivityGetYuanXiaoDataManager.Instance.CheckOpen();
+            _ui.m_btnActivityZQ.target.visible = ActivityDataManager.Instance.GetCurOpenActiveByType(ActivityDataManager.Instance.TurnTableActivityType) == 0 ? false : true; ;
         }
 
         private void RefreshBtnActivityFYJY()
@@ -1281,9 +1283,14 @@ namespace GFGGame
                     RedDotController.Instance.SetComRedDot(_ui.m_btnMain.target
                         , MainStoryDataManager.GetChapterRewardStatus(), "icon_tanhao", -40,40);
                 }
+            if (redPointUpdateFrame == 25)
+            {
+                RedDotController.Instance.SetComRedDot(_ui.m_btnActivityZQ.target
+                    , ActivityDataManager.Instance.TurnTableRewardRed(), "", -15, -1);
+            }
 
             redPointUpdateFrame++;
-            if(redPointUpdateFrame > 25)
+            if(redPointUpdateFrame > 26)
             {
                 redPointUpdateFrame = -1;
             }
@@ -1636,6 +1643,10 @@ namespace GFGGame
         {
             ViewManager.Show<ActivityGetYuanXiaoEntryView>();
         }
+        private void OnClickBtnGetZhongQiu()
+        {
+            ViewManager.Show<TurnTableView>();
+        }
 
         private void OnClickBtnFYJY()
         {

+ 6 - 0
GameClient/Assets/Game/HotUpdate/Views/MatchingCompetition/MatchingCompetitionRewardView.cs

@@ -36,6 +36,7 @@ namespace GFGGame
         protected override void OnInit()
         {
             base.OnInit();
+            packageName = UI_MatchingCompetitionRewardUI.PACKAGE_NAME;
             _ui = UI_MatchingCompetitionRewardUI.Create();
             this.viewCom = _ui.target;
             //this.viewCom.Center();
@@ -141,6 +142,11 @@ namespace GFGGame
             //_effects.Clear();
             //EventAgent.DispatchEvent(ConstMessage.REWARDVIEW_CLOTHER);
             GetSuitItemController.TryShow(0);
+            if(ActivityDataManager.Instance.StartDropId != ActivityDataManager.Instance.TipsDropId)
+            {
+                PromptController.Instance.ShowFloatTextPrompt("特殊奖励已改变!");
+                ActivityDataManager.Instance.StartDropId = ActivityDataManager.Instance.TipsDropId;
+            }
         }
         private void RenderListRewardItem(int index, GObject obj)
         {

+ 6 - 0
GameClient/Assets/Game/HotUpdate/Views/MatchingCompetition/MatchingCompetitionSelectView.cs

@@ -290,12 +290,14 @@ namespace GFGGame
             RoleInfoManager.Instance.UpdateHead(_ui.m_player1.m_head, otherLeftInfo.HeadItemId, otherLeftInfo.HeadBorderItemId);
             _ui.m_player1.m_nameText.text = otherLeftInfo.RoleName.ToString();
             _ui.m_select1.m_numText.visible = false;
+            _ui.m_player1.m_nameText.visible = false;
             _ui.m_select1.m_numText.text = otherLeftInfo.Score.ToString();
             MatchingPhotoWorksData otherRightdata = MatchingRightDataManager.Instance.RightRoleInfo;
             JudgingRoundRoleInfo otherRightInfo = otherRightdata.JudgingInfo;
             RoleInfoManager.Instance.UpdateHead(_ui.m_player2.m_head, otherRightInfo.HeadItemId, otherRightInfo.HeadBorderItemId);
             _ui.m_player2.m_nameText.text = otherRightInfo.RoleName.ToString();
             _ui.m_select2.m_numText.visible = false;
+            _ui.m_player2.m_nameText.visible = false;
             _ui.m_select2.m_numText.text = otherRightInfo.Score.ToString();
             ViewManager.Hide<ModalStatusView>();
         }
@@ -325,6 +327,8 @@ namespace GFGGame
                 _ui.m_select1.m_c1.selectedIndex = 1;
                 _ui.m_select1.m_numText.visible = true;
                 _ui.m_select2.m_numText.visible = true;
+                _ui.m_player1.m_nameText.visible = true;
+                _ui.m_player2.m_nameText.visible = true;
                 _ui.m_select1.m_numText.text = string.Format("心动值{0}", MatchingLeftDataManager.Instance.LeftRoleInfo.JudgingInfo.Score.ToString());
                 _ui.m_timeText.text = string.Format("剩余次数:{0}", Mathf.Max(0, judgingCfg.FreeTimes - MatchingCompetitionDataManager.Instance.MatchingRemainingTimes));
             }
@@ -363,6 +367,8 @@ namespace GFGGame
                 _ui.m_select2.m_c1.selectedIndex = 1;
                 _ui.m_select1.m_numText.visible = true;
                 _ui.m_select2.m_numText.visible = true;
+                _ui.m_player1.m_nameText.visible = true;
+                _ui.m_player2.m_nameText.visible = true;
                 _ui.m_select2.m_numText.text = string.Format("心动值{0}", MatchingRightDataManager.Instance.RightRoleInfo.JudgingInfo.Score.ToString());
                 _ui.m_timeText.text = string.Format("剩余次数:{0}", Mathf.Max(0, judgingCfg.FreeTimes - MatchingCompetitionDataManager.Instance.MatchingRemainingTimes));
             }

+ 1 - 0
GameClient/Assets/Game/HotUpdate/Views/RoleInfo/ChangeThemeView.cs

@@ -97,6 +97,7 @@ namespace GFGGame
                 UI_ComDodgeFightStar.ProxyEnd();
             }
             item.m_useIcon.visible = false;
+            item.m_fieldwork.visible = false;
             if(cardData.id == MainDataManager.Instance.CardBgID)
             {
                 selectIndex = index;

+ 58 - 5
GameClient/Assets/Game/HotUpdate/Views/RoleInfo/PhoneBindingView.cs

@@ -9,6 +9,8 @@ namespace GFGGame
     {
 
         private UI_PhoneBindingUI _ui;
+        private float countTimeSpeed = 0.000035f;
+        private bool isCountTime = false;
         private EffectUI _effectUI1;
         private EffectUI _effectUI2;
 
@@ -48,21 +50,72 @@ namespace GFGGame
         protected override void OnShown()
         {
             base.OnShown();
+            _ui.m_inputPhoneNumber.text = "";
+            _ui.m_inputName.text = "";
+            isCountTime = false;
+            _ui.m_countTime.visible = false;
         }
 
         protected override void OnHide()
         {
             base.OnHide();
+            Timers.inst.Remove(UpdateCountTime);
         }
-
-        private void OnBtnSureClick()
+        private void UpdateCountTime(object param = null)
         {
-            Hide();
+            if (_ui.m_countTime.fillAmount <= 0)
+            {
+                _ui.m_countTime.fillAmount = 0;
+                _ui.m_countTime.visible = false;
+                isCountTime = false;
+                Timers.inst.Remove(UpdateCountTime);
+            }
+            _ui.m_countTime.fillAmount -= countTimeSpeed;
         }
-
-        private void OnBtnGetCode()
+        private async void OnBtnSureClick()
         {
+            if(ActivityDataManager.Instance.PhoneNum != null && ActivityDataManager.Instance.PhoneNum != "")
+            {
+                PromptController.Instance.ShowFloatTextPrompt(string.Format("号码{0}已绑定!", ActivityDataManager.Instance.PhoneNum));
+                Hide();
+            }
+            bool result = await RoleInfoSProxy.BindMobilePhoneNumber(_ui.m_inputPhoneNumber.text ,_ui.m_inputName.text);
+            if(result)
+            {
+                //PromptController.Instance.ShowFloatTextPrompt("绑定成功!");
+                //Hide();
+            }
+            else
+            {
+                //PromptController.Instance.ShowFloatTextPrompt("绑定失败!");
+            }   
+        }
 
+        private  async void OnBtnGetCode()
+        {
+            if (_ui.m_inputPhoneNumber.text == null || _ui.m_inputPhoneNumber.text == "")
+            {
+                PromptController.Instance.ShowFloatTextPrompt("麻烦输入手机号码!");
+                return;
+            }
+            if (isCountTime)
+            {
+                PromptController.Instance.ShowFloatTextPrompt("刷新冷却中,请耐心等待!");
+                return;
+            }
+            isCountTime = true;
+            _ui.m_countTime.visible = true;
+            _ui.m_countTime.fillAmount = 1.0f;
+            Timers.inst.AddUpdate(UpdateCountTime);
+            bool result = await RoleInfoSProxy.GetMobileVerification(_ui.m_inputPhoneNumber.text);
+            if (result)
+            {
+                //PromptController.Instance.ShowFloatTextPrompt("获取成功!");
+            }
+            else
+            {
+                //PromptController.Instance.ShowFloatTextPrompt("获取失败!麻烦输入正确的手机号码!");
+            }
         }
 
         private void AddEffect()

+ 10 - 2
GameClient/Assets/Game/HotUpdate/Views/Task/CombTaskController.cs

@@ -226,8 +226,16 @@ namespace GFGGame
             {
                 case ConstBonusStatus.CAN_NOT_GET:
                     {
-                        var rewards = ItemUtil.CreateItemDataList(cfg.rewardsArr);
-                        ViewManager.Show<RewardPreView>(new object[] { rewards, "活跃度奖励", $"满足{cfg.count}活跃度可领取" });
+                        if(cfg.activityId != 0 && ActivityGlobalDataManager.Instance.IsActivityOpen(cfg.activityId))
+                        {
+                            var rewards = ItemUtil.CreateItemDataList(cfg.ActiveRewardsArr);
+                            ViewManager.Show<RewardPreView>(new object[] { rewards, "活跃度奖励", $"满足{cfg.count}活跃度可领取" });
+                        }
+                        else
+                        {
+                            var rewards = ItemUtil.CreateItemDataList(cfg.rewardsArr);
+                            ViewManager.Show<RewardPreView>(new object[] { rewards, "活跃度奖励", $"满足{cfg.count}活跃度可领取" });
+                        }
                         break;
                     }
                 case ConstBonusStatus.CAN_GET:

+ 8 - 0
GameClient/Assets/Game/HotUpdate/Views/TurnTable.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: f51f99fcb946b7946902836ad55d153a
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 142 - 0
GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnSpecialTipsView.cs

@@ -0,0 +1,142 @@
+using UnityEngine;
+using FairyGUI;
+using UI.TurnTable;
+using System.Collections.Generic;
+
+namespace GFGGame
+{
+    public class TurnSpecialTipsView : BaseWindow
+    {
+        private UI_TurnSpecialTipsUI _ui;
+        public List<DropOutCfg> rewardList = new List<DropOutCfg>();
+        private EffectUI _effectUI1;
+        private EffectUI _effectUI2;
+        public override void Dispose()
+        {
+            EffectUIPool.Recycle(_effectUI1);
+            _effectUI1 = null;
+            EffectUIPool.Recycle(_effectUI2);
+            _effectUI2 = null;
+            base.Dispose();
+            if (_ui != null)
+            {
+                _ui.Dispose();
+                _ui = null;
+            }
+            base.Dispose();
+        }
+
+        protected override void Init()
+        {
+            base.Init();
+        }
+
+        protected override void OnInit()
+        {
+            base.OnInit();
+            packageName = UI_TurnSpecialTipsUI.PACKAGE_NAME;
+            _ui = UI_TurnSpecialTipsUI.Create();
+            viewCom = _ui.target;
+            modal = true;
+            this.viewCom.Center();
+            viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
+            _ui.m_list.itemRenderer = RenderTaskList;
+        }
+
+        protected override void OnShown()
+        {
+            base.OnShown();
+            //这里根据表来,看放哪
+            //int activityID = ActivityDataManager.Instance.GetCurOpenActiveByType(ActivityDataManager.Instance.TurnTableActivityType);
+            int dropId = ActivityDataManager.Instance.TipsDropId;//TurntableLuckyBoxCfgArray.Instance.GetCfgByActivityId(activityID).ExtraIdDropId;
+            rewardList = DropOutCfgArray.Instance.GetCfgsByid(dropId);
+            _ui.m_list.numItems = rewardList.Count;
+        }
+
+        protected override void OnHide()
+        {
+            base.OnHide();
+        }
+
+        private void RenderTaskList(int index, GObject obj)
+        {
+            int[] bonus = new int[] { rewardList[index].item, rewardList[index].maxNum }; 
+            ItemData reward = ItemUtil.createItemData(bonus);
+            if (obj.data == null)
+            {
+                obj.data = new ItemView(obj as GComponent);
+            }
+            (obj.data as ItemView).SetData(reward);
+            (obj.data as ItemView).ChangeTxtCountStyle();
+            if(isGetBag(reward.id))
+            {
+                (obj.data as ItemView).ImgHasVisible = true;
+            }
+            else
+            {
+                (obj.data as ItemView).ImgHasVisible = false;
+            }
+        }
+        private bool isGetGift(int id)
+        {
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(id);
+            if (itemCfg == null)
+            {
+                return false;
+            }
+            int targetCount = itemCfg.itemsArr.Length;
+            int count = 0;
+            for (int i = 0; i < itemCfg.itemsArr.Length; i++)
+            {
+                ItemData itemDate;
+                if (BagDataManager.Instance.GetBagData().TryGetValue(itemCfg.itemsArr[i][0], out itemDate))
+                {
+                    if (itemDate.num >= itemCfg.itemsArr[i][1])
+                    {
+                        count++;
+                    }
+                }
+                else
+                {
+                    ItemCfg itemcfg = ItemCfgArray.Instance.GetCfg(itemCfg.itemsArr[i][0]);
+                    if(itemcfg.itemType == ConstItemType.CARD)
+                    {
+                        CardData data = CardDataManager.GetCardDataById(itemcfg.id);
+                        if(data !=null)
+                        {
+                            count++;
+                        }
+                    }
+                    else if(itemcfg.itemType == ConstItemType.ITEM && itemcfg.subType == 1)
+                    {
+
+                    }
+                    else 
+                    {
+                        if (ItemDataManager.GetItemNum(itemCfg.itemsArr[i][0]) >= itemCfg.itemsArr[i][1])
+                        {
+                            count++;
+                        }
+                    }
+                }
+            }
+            if(count >= targetCount)
+            {
+                return true;
+            }
+            return false;
+        }
+        private bool isGetBag(int id)
+        {
+           foreach(var item in ActivityDataManager.Instance.GiftBagIdList)
+            {
+                if(item == id)
+                {
+                    return true;
+                }
+            }
+            return false;
+        }
+
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnSpecialTipsView.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: e79a1b4f60743a642ace0499396b4b84
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 245 - 0
GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnTableRewardTIpsView.cs

@@ -0,0 +1,245 @@
+using System.Collections;
+using UnityEngine;
+using UI.TurnTable;
+using FairyGUI;
+using System.Collections.Generic;
+using System;
+
+namespace GFGGame
+{
+    public class TurnTableTipsRewardView : BaseWindow
+    {
+        private UI_TurnTableRewardUI _ui;
+        private List<ItemData> _listItemDatas;
+
+        private Action onSuccess = null;
+
+        private List<EffectUI> _effects = new List<EffectUI>();
+
+        private const int maxHeight = 1030;
+
+        private EffectUI _effectUI1;
+        private EffectUI _effectUI2;
+        private EffectUI _effectUI3;
+        private EffectUI _effectUI4;
+        private int counTime = 0;  //定时器计数
+
+        public override void Dispose()
+        {
+            EffectUIPool.Recycle(_effectUI3);
+            _effectUI3 = null;
+            EffectUIPool.Recycle(_effectUI4);
+            _effectUI4 = null;
+            if (_ui != null)
+            {
+                _ui.Dispose();
+                _ui = null;
+            }
+            base.Dispose();
+
+        }
+
+        protected override void OnInit()
+        {
+            base.OnInit();
+            packageName = UI_TurnTableRewardUI.PACKAGE_NAME;
+            _ui = UI_TurnTableRewardUI.Create();
+            this.viewCom = _ui.target;
+            //this.viewCom.Center();
+            //this.modal = true;
+            //viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
+            isfullScreen = true;
+
+            _ui.m_comList.m_listReward.itemRenderer = RenderListRewardItem;
+            _ui.m_mask.onClick.Add(this.Hide);
+
+            _effectUI3 = EffectUIPool.CreateEffectUI(_ui.m_bgEffect, "ui_league", "TEA");
+            _effectUI4 = EffectUIPool.CreateEffectUI(_ui.m_bgEffect1, "ui_LuckyBox", "CK_Yellow_01");
+        }
+        protected override void OnShown()
+        {
+            base.OnShown();
+            _ui.m_mask.touchable = false;
+            if ((this.viewData as object[]).Length > 0)
+            {
+                _listItemDatas = (this.viewData as object[])[0] as List<ItemData>;
+                onSuccess = (this.viewData as object[])[1] as Action;
+            }
+            else
+            {
+                _listItemDatas = this.viewData as List<ItemData>;
+            }
+
+            List<ItemData> suitPart = new List<ItemData>(); ;
+            for (int i = _listItemDatas.Count - 1; i >= 0; i--)
+            {
+                SuitCfg suitCfg = SuitCfgArray.Instance.GetCfg(_listItemDatas[i].id);
+                if (suitCfg != null)
+                {
+                    for (int j = 0; j < suitCfg.partsArr.Length; j++)
+                    {
+                        suitPart.Add(ItemUtil.createItemData(suitCfg.partsArr[j], _listItemDatas[i].num));
+                    }
+                    _listItemDatas.RemoveAt(i);
+                }
+            }
+            _listItemDatas.AddRange(suitPart);
+            //_ui.m_listReward.SetVirtual();  //有虚拟列表的时候,没有办法居中显示列表
+
+            _ui.m_downTipsText.visible = false;
+            _ui.m_comList.m_listReward.numItems = 0;
+            counTime = 0;
+            _ui.m_bgEffect.visible = true;
+            _ui.m_bgEffect1.visible = true;
+            Timers.inst.Add(0.1f, 3, OnTimerUpdate, 1);
+            Timers.inst.Add(0.5f, 1, OnTimerClick);
+        }
+
+        private void OnTimerClick(object param)
+        {
+            _ui.m_mask.touchable = true;
+        }
+
+        private void OnTimerUpdate(object param)
+        {
+            counTime += 1;
+            if (counTime == 1)
+            {
+                _effectUI1 = EffectUIPool.CreateEffectUI(_ui.m_holderTitle, "ui_hd", "GXHD_Text");
+                _effectUI2 = EffectUIPool.CreateEffectUI(_ui.m_holderBgCom, "ui_hd", "TC_Quad_ALL");
+            }
+            else if (counTime == 2)
+            {
+                _ui.m_comList.m_listReward.numItems = _listItemDatas.Count;
+
+                _ui.m_comList.m_listReward.ResizeToFit();
+                if (_ui.m_comList.m_listReward.height > maxHeight)
+                {
+                    _ui.m_comList.m_listReward.height = maxHeight;
+                }
+            }
+            else if (counTime == 3)
+            {
+                _ui.m_downTipsText.visible = true;
+                Timers.inst.Remove(OnTimerUpdate);
+            }
+        }
+
+        protected override void OnHide()
+        {
+            EffectUIPool.Recycle(_effectUI1);
+            _effectUI1 = null;
+            EffectUIPool.Recycle(_effectUI2);
+            _effectUI2 = null;
+            Timers.inst.Remove(OnTimerUpdate);
+            Timers.inst.Remove(OnTimerClick);
+            _ui.m_mask.touchable = true;
+            for (int i = 0; i < _effects.Count; i++)
+            {
+                if (_effects[i] != null)
+                {
+                    EffectUIPool.Recycle(_effects[i]);
+                    _effects[i] = null;
+                }
+            }
+            _effects.Clear();
+
+            if (onSuccess != null)
+            {
+                onSuccess();
+            }
+            base.OnHide();
+            //_effects.Clear();
+            //EventAgent.DispatchEvent(ConstMessage.REWARDVIEW_CLOTHER);
+            GetSuitItemController.TryShow(0);
+            if (ActivityDataManager.Instance.StartDropId != ActivityDataManager.Instance.TipsDropId)
+            {
+                PromptController.Instance.ShowFloatTextPrompt("特殊奖励已改变!");
+                ActivityDataManager.Instance.StartDropId = ActivityDataManager.Instance.TipsDropId;
+            }
+        }
+        private void RenderListRewardItem(int index, GObject obj)
+        {
+            // obj.data = _listItemDatas[index];
+            UI.CommonGame.UI_ComItem item = UI.CommonGame.UI_ComItem.Proxy(obj);
+            string name = "";
+            string iconRes = "";
+            string ext = "png";
+            int rarity = 0;
+            int id = 0;
+            bool isSuit = false;
+
+            SuitCfg suitCfg = SuitCfgArray.Instance.GetCfg(_listItemDatas[index].id);
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(_listItemDatas[index].id);
+
+            if (suitCfg != null)
+            {
+                name = suitCfg.name;
+                iconRes = suitCfg.res;
+                rarity = suitCfg.rarity;
+                id = suitCfg.id;
+                isSuit = true;
+            }
+            else
+            {
+                name = itemCfg.name;
+                ext = ItemUtil.GetItemResExt(itemCfg.itemType, itemCfg.subType, true);
+                iconRes = itemCfg.res;
+                id = itemCfg.id;
+                isSuit = false;
+                //if (itemCfg.itemType == ConstItemType.DRESS_UP)
+                rarity = itemCfg.rarity;
+            }
+
+            item.m_txtName.text = name;
+            // item.m_txtCount.text = _listItemDatas[index].num==1?"": string.Format("{0}", _listItemDatas[index].num);
+            item.m_txtCount.text = string.Format("{0}", _listItemDatas[index].num);
+            item.m_loaIcon.url = ResPathUtil.GetIconPath(iconRes, ext);
+            if (rarity > 0)
+            {
+                item.m_QualityType.selectedIndex = rarity - 1;
+            }
+            else
+            {
+                item.m_QualityType.selectedIndex = 0;
+            }
+
+            RarityIconController.UpdateRarityIcon(item.m_loaRarity, id, false, isSuit);
+
+            item.m_imgOnceBonus.visible = _listItemDatas[index].isOnceBonus;
+            //特效("ui_ck", "ui_ck_zl");
+            int childIndex = _ui.m_comList.m_listReward.ItemIndexToChildIndex(index);
+            if (_effects.Count <= childIndex)
+            {
+                EffectUI _effectUI = EffectUIPool.CreateEffectUI(item.m_holderReware, "ui_hd", "GXHD_WuPin", 120);
+                _effects.Add(_effectUI);
+            }
+
+            if (item.target.data == null)
+            {
+                item.target.onClick.Add(OnClickListReward);
+            }
+            item.target.data = _listItemDatas[index];
+            UI.CommonGame.UI_ComItem.ProxyEnd();
+        }
+
+        private void OnClickListReward(EventContext context)
+        {
+            if (this.ShowTips)
+            {
+                ItemData data = (context.sender as GObject).data as ItemData;
+                GoodsItemTipsController.ShowItemTips(data.id);
+            }
+        }
+
+        private bool _showTips = true;
+        /// <summary>
+        /// 是否展示物品详情,默认展示
+        /// </summary>
+        private bool ShowTips
+        {
+            get { return _showTips; }
+            set { _showTips = value; }
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnTableRewardTIpsView.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: ffdda951d959c034db6483c405f23f67
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 32 - 0
GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnTableTipsCR.cs

@@ -0,0 +1,32 @@
+using System;
+
+namespace GFGGame
+{
+
+    public class TurnTipsController : SingletonBase<TurnTipsController> 
+    { 
+        private static TurnTableTipsView _buyTipsView;
+
+        public static void Show(int itemId, long count, Action onSuccess = null, bool showCheck = false)
+        {
+            if (_buyTipsView == null)
+            {
+                _buyTipsView = new TurnTableTipsView();
+            }
+            _buyTipsView.SetParams(itemId, count, onSuccess, showCheck);
+            _buyTipsView.Show();
+        }
+
+        public static void hide()
+        {
+            if (_buyTipsView != null)
+            {
+                _buyTipsView.Hide();
+            }
+        }
+        public static void Dispose()
+        {
+            _buyTipsView = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnTableTipsCR.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 0ad0b51e1c4464a47827acfe4697b991
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 97 - 0
GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnTableTipsView.cs

@@ -0,0 +1,97 @@
+using System;
+using System.Collections.Generic;
+using UI.CommonGame;
+
+namespace GFGGame
+{
+    public class TurnTableTipsView : BaseWindow
+    {
+        private UI_BuyTipsUI _ui;
+
+        private int _itemId;
+        private int _costId;
+        private long _count;
+        private int _costCount;
+        private bool _result = false;
+        private Action _onSuccess;
+        private bool _showCheck = false;
+
+        public override void Dispose()
+        {
+            if (_ui != null)
+            {
+                _ui.Dispose();
+                _ui = null;
+            }
+            BuyTipsController.Dispose();
+            base.Dispose();
+        }
+
+        protected override void OnInit()
+        {
+            base.OnInit();
+            _ui = UI_BuyTipsUI.Create();
+            this.viewCom = _ui.target;
+            this.viewCom.Center();
+            this.modal = true;
+            viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
+
+            _ui.m_btnSure.target.onClick.Add(OnClickBtnSure);
+            _ui.m_btnCancel.target.onClick.Add(OnClickBtnCancel);
+            _ui.m_btnCancel.target.onClick.Add(OnClickBtnCancel);
+            _ui.m_btnCheck.onClick.Add(OnBtnCheckClick);
+        }
+
+        public void SetParams(int itemId, long count, Action onSuccess = null, bool showCheck = false)
+        {
+            _itemId = itemId;
+            _count = count;
+
+            _onSuccess = onSuccess;
+            _showCheck = showCheck;
+        }
+
+        protected override void OnShown()
+        {
+            base.OnShown();
+            UpdateView();
+        }
+
+        private void UpdateView()
+        {
+            ItemExchangeCfgArray.Instance.GetMoneyIdAndNum(_itemId, ItemDataManager.GetItemExchangeTimes(_itemId), (int)_count, out _costId, out _costCount, out int buyNum);
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(_itemId);
+            _ui.m_txtNeed.text = string.Format("还需要购买{0}个", _count);
+            _ui.m_loaNeed.url = ResPathUtil.GetIconPath(itemCfg.res, "png");
+            ItemCfg costCfg = ItemCfgArray.Instance.GetCfg(_costId);
+            _ui.m_txtCost.text = string.Format("是否花费{0}{1}购买?", _costCount, costCfg.name);
+
+            if (_showCheck)
+                _ui.m_checkType.selectedIndex = 1;
+            else
+                _ui.m_checkType.selectedIndex = 0;
+        }
+
+        private async void OnClickBtnSure()
+        {
+
+            _result = await ItemExchangeSProxy.ItemExchange(_itemId, _count);
+            if (_result)
+            {
+                BonusController.TryShowBonusList(ItemUtil.CreateItemDataList(_itemId, _count), _onSuccess);
+            }
+
+            this.Hide();
+        }
+
+        private void OnClickBtnCancel()
+        {
+            this.Hide();
+        }
+
+        private void OnBtnCheckClick()
+        {
+            ActivityDataManager.Instance.CHECK_TIPS_OPEN = _ui.m_btnCheck.selected;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnTableTipsView.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 78a8f16f58e813342b509f5e9a17db04
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 599 - 0
GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnTableView.cs

@@ -0,0 +1,599 @@
+using FairyGUI;
+using UnityEngine;
+using UI.TurnTable;
+using System.Collections;
+using System.Collections.Generic;
+using ET;
+using System.Threading.Tasks;
+using System.Linq;
+using System.Text.RegularExpressions;
+
+namespace GFGGame
+{
+
+    public class TurnTableView : BaseWindow
+    {
+        private UI_TurnTableUI _ui;
+        private ValueBarController _valueBarController;
+        private int activityID;
+        private int propID;
+        private int WaitTime;
+        private float duratio;
+        //这里固定旋转
+        private float endValue;
+        //这里获得偏移量
+        private List<float> normalEndValue = new List<float>();
+        public List<GLoader> pointerList = new List<GLoader>();
+        //转盘物品
+        public List<DropOutCfg> rewardItemList = new List<DropOutCfg>();
+        //下面奖励物品
+        public List<TurntableRewardCfg> rewardList = new List<TurntableRewardCfg>();
+        public List<float> angleList = new List<float>() {0,39,74,109 ,145,180,215,250,288,325};
+        public int wishType = 0;
+        private EffectUI _effectUI1;
+        private EffectUI _effectUI2;
+        private EffectUI _effectUI3;
+        private EffectUI _effectUI4;
+        private EffectUI _effectUI5;
+        private EffectUI _effectUI6;
+        private EffectUI _effectUI7;
+        private EffectUI _effectUISpecial;
+        private Dictionary<string, EffectUI> _effectUIDic = new Dictionary<string, EffectUI>();
+        private Dictionary<string, EffectUI> _effectTableUIDic = new Dictionary<string, EffectUI>();
+
+        public override void Dispose()
+        {
+            EffectUIPool.Recycle(_effectUI1);
+            _effectUI1 = null;
+            EffectUIPool.Recycle(_effectUI2);
+            _effectUI2 = null;
+            EffectUIPool.Recycle(_effectUI3);
+            _effectUI3 = null;
+            EffectUIPool.Recycle(_effectUI4);
+            _effectUI4 = null;
+            EffectUIPool.Recycle(_effectUI5);
+            _effectUI5 = null;
+            EffectUIPool.Recycle(_effectUI6);
+            _effectUI6 = null;
+            EffectUIPool.Recycle(_effectUISpecial);
+            _effectUISpecial = null;
+            foreach (var v in _effectUIDic)
+            {
+                EffectUIPool.Recycle(v.Value);
+            }
+            _effectUIDic.Clear();
+            foreach (var v in _effectTableUIDic)
+            {
+                EffectUIPool.Recycle(v.Value);
+            }
+            _effectTableUIDic.Clear();
+            if (_valueBarController != null)
+            {
+                _valueBarController.Dispose();
+                _valueBarController = null;
+            }
+            if (_ui != null)
+            {
+                _ui.Dispose();
+            }
+            _ui = null;
+
+            base.Dispose();
+        }
+
+        protected override void Init()
+        {
+            base.Init();
+            packageName = UI_TurnTableUI.PACKAGE_NAME;
+            _ui = UI_TurnTableUI.Create();
+            viewCom = _ui.target;
+            isfullScreen = true;
+            isReturnView = true;
+
+            _valueBarController = new ValueBarController(_ui.m_valueBar);
+            _ui.m_btnBack.onClick.Add(OnClickBtnClose);
+            _ui.m_btnStartOne.onClick.Add(OnClickBtnStartOne);
+            _ui.m_btnStartThree.onClick.Add(OnClickBtnStartThree);
+            _ui.m_rewardIcon.onClick.Add(OnClickBtnReward);
+            _ui.m_shopBtn.onClick.Add(OnClickBtnShop);
+            _ui.m_giftBtn.onClick.Add(OnClickBtnGift);
+            endValue = 1080;
+            duratio = 2.0f;
+            WaitTime = 2700;
+            AddEffect();
+        }
+        private void AddEffect()
+        {
+            _effectUI1 = EffectUIPool.CreateEffectUI(_ui.m_bgEffect, "ui_Activity", "HHYY_BG_TX/HHYY_BG_TX");
+            _effectUI2 = EffectUIPool.CreateEffectUI(_ui.m_titleEffect, "ui_Activity", "HHYY_Text_TX/HHYY_Text_TX");
+            _effectUI3 = EffectUIPool.CreateEffectUI(_ui.m_btnEffectOne, "ui_Activity", "HHYY_Button/HHYY_Button");
+            _effectUI4 = EffectUIPool.CreateEffectUI(_ui.m_btnEffectThree, "ui_Activity", "HHYY_Button/HHYY_Button");
+            _effectUI5 = EffectUIPool.CreateEffectUI(_ui.m_bgEffec1, "ui_Activity", "HHYY_BG_TX/HHYY_BG_TX");
+            _effectUI6 = EffectUIPool.CreateEffectUI(_ui.m_bgEffec2, "ui_Activity", "HHYY_BG_TX/HHYY_BG_TX");
+            _effectUISpecial = EffectUIPool.CreateEffectUI(_ui.m_specialEffect, "ui_Activity", "HHYY_Select_Special/HHYY_Select_Special");
+        }
+        protected override void OnShown()
+        {
+            base.OnShown();
+            _ui.m_bg.url = ResPathUtil.GetBgImgPath("zqzp_bg");
+            pointerList.Clear();
+            if (pointerList == null || pointerList.Count < 3)
+            {
+                pointerList.Add(_ui.m_pointer0);
+                pointerList.Add(_ui.m_pointer1);
+                pointerList.Add(_ui.m_pointer2);
+            }
+            normalEndValue.Clear();
+            activityID = ActivityDataManager.Instance.GetCurOpenActiveByType(ActivityDataManager.Instance.TurnTableActivityType);
+            propID = TurntableLuckyBoxCfgArray.Instance.GetCfgByActivityId(activityID).CostID;
+            int dropId = TurntableLuckyBoxCfgArray.Instance.GetCfgByActivityId(activityID).DropId;
+            rewardItemList = DropOutCfgArray.Instance.GetCfgsByid(dropId);
+            rewardList = TurntableRewardCfgArray.Instance.GetCfgsByActivityId(activityID);
+            _valueBarController.OnShown();
+            _valueBarController.UpdateList(new List<int>() { propID, ConstItemID.DIAMOND_RED, ConstItemID.DIAMOND_PURPLE});
+            UpdateView();
+            UpdateRewardItem();
+            UpdateReward();
+            UpdateTime(null);
+            Timers.inst.Add(1, 0, UpdateTime);
+        }
+        protected override void OnHide()
+        {
+            base.OnHide();
+            Timers.inst.Remove(UpdateTime);
+            _ui.m_btnStartOne.touchable = true;
+            _ui.m_btnStartThree.touchable = true;
+            _valueBarController.OnHide();
+            //pointerList.Clear();
+            ActivityDataManager.Instance.threeTurnResult.Clear();
+            ActivityDataManager.Instance.TurnRewardList.Clear();
+        }
+        protected override void AddEventListener()
+        {
+            base.AddEventListener();
+            EventAgent.AddEventListener(ConstMessage.SHOP_BUY, UpdateView);
+            EventAgent.AddEventListener(ConstMessage.TurnTable_DateCHANGE, UpdateReward);
+            EventAgent.AddEventListener(ConstMessage.REWARDVIEW_CLOTHER, ShowReward);
+        }
+        protected override void RemoveEventListener()
+        {
+            base.RemoveEventListener();
+            EventAgent.RemoveEventListener(ConstMessage.SHOP_BUY, UpdateView);
+            EventAgent.RemoveEventListener(ConstMessage.TurnTable_DateCHANGE, UpdateReward);
+            EventAgent.RemoveEventListener(ConstMessage.REWARDVIEW_CLOTHER, ShowReward);
+        }
+        private void ShowReward()
+        {
+            if (ActivityDataManager.Instance.TurnSpecialRewardList != null && ActivityDataManager.Instance.TurnSpecialRewardList.Count > 0)
+            {
+                ViewManager.Show<TurnTableTipsRewardView>(new object[] { ItemUtil.CreateItemDataList(ActivityDataManager.Instance.TurnSpecialRewardList), null });
+                ActivityDataManager.Instance.TurnSpecialRewardList = null;
+            }
+        }
+        private void UpdateTime(object param = null)
+        {
+            //=====限时礼包倒计时
+            var activityInfoByTypeList = ActivityGlobalDataManager.Instance.GetActivityInfoByType(ActivityType.XSLB3);
+            if (activityInfoByTypeList.Count == 0)
+            {
+                Timers.inst.Remove(UpdateTime);
+                _ui.m_gift.visible = false;
+            }
+            else
+            {
+                _ui.m_giftTimeText.text = TimeUtil.GetTimeLeft(TimeInfo.Instance.ServerNow(), activityInfoByTypeList[0].EndTime);
+            }
+            //=====限时礼包倒计时END
+        }
+        private void UpdateView()
+        {
+            ActivityOpenCfg activiyCfg = ActivityOpenCfgArray.Instance.GetCfg(activityID);
+            if (activiyCfg != null)
+            {
+                _ui.m_timeText.text = GetTImeText(activiyCfg.endTime);
+            }
+            //还要判断是否已购买,和时间
+            var activityInfoByTypeList = ActivityGlobalDataManager.Instance.GetActivityInfoByType(ActivityType.XSLB3);
+            if (activityInfoByTypeList.Count == 0)
+            {
+                return;
+            }
+            ActivityOpenCfg activityOpenCfg = ActivityOpenCfgArray.Instance.GetCfg(activityInfoByTypeList[0].ActivityId);
+            var shopCfgId = activityOpenCfg.paramsArr[0];
+            var shopCfg = ShopCfgArray.Instance.GetCfg(shopCfgId);
+            if(shopCfg == null)
+            {
+                return;
+            }
+            var remainBuyNum = shopCfg.maxBuyNum - ShopDataManager.Instance.GetGoodsBuyNumById(shopCfg.id);
+            if (activityInfoByTypeList.Count == 0)
+            {
+                _ui.m_gift.visible = false;
+            }
+            else if(remainBuyNum != 0)
+            {
+                _ui.m_gift.visible = true;
+            }
+            else
+            {
+                _ui.m_gift.visible = false;
+            }
+        }
+        //更新转盘上物品
+        private void UpdateRewardItem()
+        {
+            if(rewardItemList.Count < 10)
+            {
+                //现在转盘上只有十个item
+                Debug.LogError("奖励不足10个");
+                return;
+            }
+            for(int i = 0;i< 10;i++)
+            {
+                GComponent comProBonus = _ui.target.GetChild("item" + i).asCom;
+                UI_rewardItem rewardItem = UI_rewardItem.Proxy(comProBonus);
+                ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(rewardItemList[i].item);
+                if (!_effectTableUIDic.ContainsKey("item" + i))
+                {
+                    _effectTableUIDic.Add("item" + i, EffectUIPool.CreateEffectUI(rewardItem.m_effect, "ui_Activity", "HHYY_Select/HHYY_Select"));
+                }
+                rewardItem.m_icon.url = ResPathUtil.GetIconPath(itemCfg);
+                rewardItem.m_numText.text = string.Format("x{0}", rewardItemList[i].maxNum);
+                rewardItem.m_c1.selectedIndex = 0;
+                rewardItem.m_effect.visible = false;
+                if (rewardItem.target.data == null)
+                {
+                    rewardItem.target.onClick.Add(OnClickTableRewardItem);
+                }
+                rewardItem.target.data = itemCfg.id;
+                UI_rewardItem.ProxyEnd();
+            }
+        }
+        //更新下面次数的物品
+        private void UpdateReward()
+        {
+            if(ActivityDataManager.Instance.TurnSpecialRewardList != null &&  ActivityDataManager.Instance.TurnSpecialRewardList.Count > 0)
+            {
+                _ui.m_specialEffect.visible = true;
+            }
+            else
+            {
+                _ui.m_specialEffect.visible = false;
+            }
+            _ui.m_numberText.text = ActivityDataManager.Instance.TurnTableTimes.ToString();
+            _ui.m_reward.m_bar.max = rewardList.Count;
+            _ui.m_reward.m_bar.value = GetRewardIndex();
+            float value =(float) GetRewardIndex() / (float)rewardList.Count;
+            _ui.m_reward.target.scrollPane.SetPercX(value, false);
+            for (int i = 0; i < rewardList.Count; i++)
+            {
+                GComponent comProBonus = _ui.m_reward.target.GetChild("itemj" + i).asCom;
+                UI_reward rewardItem = UI_reward.Proxy(comProBonus);
+                if(!_effectUIDic.ContainsKey("itemj" + i))
+                {
+                    _effectUIDic.Add("itemj" + i, EffectUIPool.CreateEffectUI(rewardItem.m_effect, "ui_Activity", "HHYY_Line_Full/HHYY_Line_Full"));
+                }  
+                rewardItem.m_effect.SetScale(1, 1);
+                ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(rewardList[i].BonusArr[0][0]);
+                rewardItem.m_icon.url = ResPathUtil.GetIconPath(itemCfg);
+                rewardItem.m_numText.text = rewardList[i].Num.ToString();
+                if (ActivityDataManager.Instance.TurnRewardStateDic.ContainsKey(rewardList[i].Id))
+                {
+                    if (i>(GetRewardIndex()-1) || ActivityDataManager.Instance.TurnRewardStateDic[rewardList[i].Id] == 2)
+                    {
+                        rewardItem.m_effect.visible = false;
+                        rewardItem.m_c1.selectedIndex = 0;
+                        RedDotController.Instance.SetComRedDot(rewardItem.target, false, "");
+                    }
+                    else
+                    {
+                        rewardItem.m_effect.visible = true;
+                        rewardItem.m_c1.selectedIndex = 1;
+                        RedDotController.Instance.SetComRedDot(rewardItem.target, true, "");
+                    }
+                    if(ActivityDataManager.Instance.TurnRewardStateDic[rewardList[i].Id] == 2)
+                    {
+                        rewardItem.m_effect.visible = false;
+                        rewardItem.m_c1.selectedIndex = 2;
+                        RedDotController.Instance.SetComRedDot(rewardItem.target, false, "");
+                    }
+                }
+                //if (i == rewardList.Count - 1)
+                //{
+                //    comProBonus.x = ((float)rewardList[i].num / (float)rewardList[rewardList.Count - 1].num) * _ui.m_reward.m_bar.width - 30;
+                //}
+                //else
+                {
+                    comProBonus.x = ((float)(i+1) / (float)rewardList.Count) * _ui.m_reward.m_bar.width - 20;
+                }
+                if(rewardItem.target.data == null)
+                {
+                    rewardItem.target.onClick.Add(OnClickRewardItem);
+                }
+                List<int> dateList = new List<int>() { itemCfg.id, rewardList[i].Id };
+                rewardItem.target.data = dateList;
+                UI_rewardItem.ProxyEnd();
+            }
+        }
+        private void OnClickTableRewardItem(EventContext context)
+        {
+            int id = (int)(context.sender as GObject).data;
+            GoodsItemTipsController.ShowItemTips(id);
+        }
+        private async void OnClickRewardItem(EventContext context)
+        {
+            List<int> idList = (List<int>)(context.sender as GObject).data;
+            //判断是否可领取
+            if (ActivityDataManager.Instance.TurnRewardStateDic.ContainsKey(idList[1]))
+            {
+                //if (ActivityDataManager.Instance.TurnRewardStateDic[idList[1]] != 1)
+                if(idList[1] > GetRewardIndex() || ActivityDataManager.Instance.TurnRewardStateDic[idList[1]] == 2)
+                {
+                    GoodsItemTipsController.ShowItemTips(idList[0]);
+                }
+                else
+                {
+                    bool result = await ActivitySProxy.ReqGetTurnTableReward(idList[1]);
+                    if (result)
+                    {
+                    }
+                }
+            }
+        }
+        private void OnClickBtnClose(object param)
+        {
+            ViewManager.GoBackFrom(typeof(TurnTableView).FullName);
+        }
+        private async void OnClickBtnStartOne()
+        {
+            ItemData item;
+            if (BagDataManager.Instance.GetBagData().TryGetValue(propID, out item))
+            {
+                if (item.num >= 1)
+                {
+                    bool result = await ActivitySProxy.ReqTurnTableWish(1);
+                    if (result)
+                    {
+                        wishType = 0;
+                        _ui.m_btnStartOne.touchable = false;
+                        _ui.m_btnStartThree.touchable = false;
+                        _ui.m_btnBack.touchable = false;
+                        _ui.m_valueBar.touchable = false;
+                        _ui.m_shopBtn.touchable = false;
+                        await TurnStart(0);
+                        await Task.Delay(WaitTime);
+                        BonusController.TryShowBonusList(ItemUtil.CreateItemDataList(ActivityDataManager.Instance.TurnRewardList));
+                        ActivityDataManager.Instance.TurnRewardList.Clear();
+                        UpdateReward();
+                        _ui.m_btnStartOne.touchable = true;
+                        _ui.m_btnStartThree.touchable = true;
+                        _ui.m_btnBack.touchable = true;
+                        _ui.m_valueBar.touchable = true;
+                        _ui.m_shopBtn.touchable = true;
+                    }
+                    else
+                    {
+                        //Debug.LogError("许愿失败");
+                    }
+                }
+                else
+                {
+                    if (ActivityDataManager.Instance.CHECK_TIPS_OPEN == false)
+                        TurnTipsController.Show(propID, 1, null, true);
+                    else
+                    {
+                        OnBuyItem(propID, 1);
+                    }
+                }
+            }
+            else
+            {
+                if (ActivityDataManager.Instance.CHECK_TIPS_OPEN == false)
+                    TurnTipsController.Show(propID, 1, null, true);
+                else
+                {
+                    OnBuyItem(propID, 1);
+                }
+            }
+        }
+        private async void OnClickBtnStartThree()
+        {
+            ItemData item;
+            if (BagDataManager.Instance.GetBagData().TryGetValue(propID, out item))
+            {
+                if(item.num >= 3)
+                {
+                    bool result = await ActivitySProxy.ReqTurnTableWish(2);
+                    if (result)
+                    {
+                        _ui.m_btnStartOne.touchable = false;
+                        _ui.m_btnStartThree.touchable = false;
+                        _ui.m_btnBack.touchable = false;
+                        _ui.m_valueBar.touchable = false;
+                        _ui.m_shopBtn.touchable = false;
+                        await TurnStart(0);
+                        await Task.Delay(WaitTime);
+                        await TurnStart(1);
+                        await Task.Delay(WaitTime);
+                        await TurnStart(2);
+                        await Task.Delay(WaitTime);
+                        BonusController.TryShowBonusList(ItemUtil.CreateItemDataList(ActivityDataManager.Instance.TurnRewardList));
+                        ActivityDataManager.Instance.TurnRewardList.Clear();
+                        _ui.m_btnStartOne.touchable = true;
+                        _ui.m_btnStartThree.touchable = true;
+                        _ui.m_btnBack.touchable = true;
+                        _ui.m_valueBar.touchable = true;
+                        _ui.m_shopBtn.touchable = true;
+                        UpdateReward();
+                    }
+                    else
+                    {
+                        //Debug.LogError("许愿失败");
+                    }
+                }
+                else
+                {
+                    if (ActivityDataManager.Instance.CHECK_TIPS_OPEN == false)
+                        TurnTipsController.Show(propID, 3,null, true);
+                    else
+                    {
+                        OnBuyItem(propID, 3);
+                    }
+                }
+            }
+            else
+            {
+                if (ActivityDataManager.Instance.CHECK_TIPS_OPEN == false)
+                    TurnTipsController.Show(propID, 3, null, true);
+                else
+                {
+                    OnBuyItem(propID, 3);
+                }
+            }
+        }
+        private async void OnBuyItem(int itemId, long count)
+        {
+            var _result = await ItemExchangeSProxy.ItemExchange(itemId, count);
+            if (_result)
+                BonusController.TryShowBonusList(ItemUtil.CreateItemDataList(itemId, count));
+        }
+        private void OnClickBtnShop()
+        {
+            ViewManager.Show<StoreView>(new object[] { ConstStoreTabId.STORE_GIFT_BAG, ConstStoreSubId.STORE_ACTIVITY_EXCHANGE });
+        }
+        private void OnClickBtnReward()
+        {
+            ViewManager.Show<TurnSpecialTipsView>();
+        }
+        private void OnClickBtnGift()
+        {
+            var activityInfoByTypeList =
+                ActivityGlobalDataManager.Instance.GetActivityInfoByType(ActivityType.XSLB3);
+
+            var list = activityInfoByTypeList
+                .Where(a => a.EndTime > TimeInfo.Instance.ServerNow()).ToList();
+            if (list.Count == 0)
+                PromptController.Instance.ShowFloatTextPrompt("活动已结束");
+            else
+                ViewManager.Show<RushSaleGiftBoxView>(new object[] { ActivityType.XSLB3, this.viewData });
+        }
+        private async ETTask TurnStart(int Round)
+        {
+            UpdateRewardItem();
+            GetOffSetValue(Round);
+            if (normalEndValue.Count >= 3)
+            {
+                TurnTable(0, normalEndValue[0], Round);
+            }
+            await Task.Delay(200);
+            if(normalEndValue.Count >= 2)
+            {
+                TurnTable(1, normalEndValue[1], Round);
+            }
+            await Task.Delay(200);
+            if (normalEndValue.Count >= 3)
+            {
+                TurnTable(2, normalEndValue[2], Round);
+            }
+        }
+        private void TurnTable(int index,float OffValue,int Round)
+        {
+            pointerList[index].rotation = pointerList[index].rotation % 360;
+            float selfEndValue = pointerList[index].rotation;
+            selfEndValue += endValue + OffValue;
+            pointerList[index].TweenRotate(selfEndValue, duratio).OnComplete(() =>SetItemSelect(index,Round));
+        }
+        private void SetItemSelect(int index,int Round)
+        {
+            int id = ActivityDataManager.Instance.threeTurnResult[Round][index].ConfigId;
+            int i = GetItemIndexRota(id);
+            GComponent comProBonus = _ui.target.GetChild("item" + i).asCom;
+            UI_rewardItem rewardItem = UI_rewardItem.Proxy(comProBonus);
+            rewardItem.m_c1.selectedIndex = 1;
+            rewardItem.m_effect.visible = true;
+            UI_rewardItem.ProxyEnd();
+        }
+        private void GetOffSetValue(int index)
+        {
+            normalEndValue.Clear();
+            if (ActivityDataManager.Instance.threeTurnResult.ContainsKey(index))
+            {
+                normalEndValue.Add(GetOffSet(ActivityDataManager.Instance.threeTurnResult[index][0].ConfigId, 0));
+                normalEndValue.Add(GetOffSet(ActivityDataManager.Instance.threeTurnResult[index][1].ConfigId, 1));
+                normalEndValue.Add(GetOffSet(ActivityDataManager.Instance.threeTurnResult[index][2].ConfigId, 2));
+            }
+            else
+            {
+                ET.Log.Error("未获得奖励");
+            }
+        }
+        //通过获得的物品id和当前指针位置获得偏移角度
+        private float GetOffSet(int itemID,int index)
+        {
+            float currentRota = pointerList[index].rotation % 360;
+            float OffSetOne = 360 - currentRota;
+            float OffSetTwo = angleList[GetItemIndexRota(itemID)];
+            float OffSet;
+            if(currentRota > OffSetTwo)
+            {
+                OffSet = OffSetTwo + OffSetOne;
+            }
+            else if (currentRota < OffSetTwo)
+            {
+                OffSet = OffSetTwo - currentRota;
+            }
+            else
+            {
+                OffSet = 0;
+            }
+            return OffSet;
+        }
+        private int GetItemIndexRota(int id)
+        {
+            for(int i = 0;i<rewardItemList.Count;i++)
+            {
+                if(id == rewardItemList[i].item)
+                {
+                    return i;
+                }
+            }
+            return 0;
+        }
+        private int GetRewardIndex()
+        {
+            for (int i = 0; i < rewardList.Count - 1; i++)
+            {
+                if (ActivityDataManager.Instance.TurnTableTimes < rewardList[0].Num)
+                {
+                    return 0;
+                }
+                else if(ActivityDataManager.Instance.TurnTableTimes >= rewardList[rewardList.Count - 1].Num)
+                {
+                    return rewardList.Count;
+                }
+                if (ActivityDataManager.Instance.TurnTableTimes >= rewardList[i].Num && ActivityDataManager.Instance.TurnTableTimes < rewardList[i + 1].Num)
+                {
+                    return i + 1;
+                }
+            }
+            return 0;
+        }
+        private string GetTImeText(string time)
+        {
+            string pattern = @"\[(.*?)\]"; 
+
+            // 创建一个Regex对象
+            Regex regex = new Regex(pattern);
+
+            // 匹配输入字符串中的所有内容
+            MatchCollection matches = Regex.Matches(time, pattern);
+            // 存储所有提取的内容
+            string TimeText = matches[0].Groups[1].Value;
+            for(int i = 1;i< matches.Count; i++)
+            {
+                TimeText += "-" + matches[i].Groups[1].Value;
+            }
+            return TimeText;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/TurnTable/TurnTableView.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: d03f210e909ba7040867be7a89cbab27
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

二进制
GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0!a.png


二进制
GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0.png


二进制
GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0_1!a.png


二进制
GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0_1.png


二进制
GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0_2!a.png


+ 120 - 0
GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0_2!a.png.meta

@@ -0,0 +1,120 @@
+fileFormatVersion: 2
+guid: 9118c63ef9ba2664282e7fb3924e6da9
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: iPhone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: 50
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 1
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: Android
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: 50
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 1
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

二进制
GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0_2.png


+ 120 - 0
GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0_2.png.meta

@@ -0,0 +1,120 @@
+fileFormatVersion: 2
+guid: a56b512470aae544fb3ceb132befd5d5
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: iPhone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: 50
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 1
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: Android
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: 50
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 1
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

二进制
GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_fui.bytes


二进制
GameClient/Assets/ResIn/UI/Main/Main_atlas0!a.png


二进制
GameClient/Assets/ResIn/UI/Main/Main_atlas0.png


二进制
GameClient/Assets/ResIn/UI/Main/Main_atlas0_1!a.png


二进制
GameClient/Assets/ResIn/UI/Main/Main_atlas0_1.png


二进制
GameClient/Assets/ResIn/UI/Main/Main_atlas0_3.png


二进制
GameClient/Assets/ResIn/UI/Main/Main_atlas0_5.png


二进制
GameClient/Assets/ResIn/UI/Main/Main_fui.bytes


二进制
GameClient/Assets/ResIn/UI/MatchingCompetition/MatchingCompetition_atlas0!a.png


二进制
GameClient/Assets/ResIn/UI/MatchingCompetition/MatchingCompetition_atlas0.png


二进制
GameClient/Assets/ResIn/UI/MatchingCompetition/MatchingCompetition_atlas0_1!a.png


二进制
GameClient/Assets/ResIn/UI/MatchingCompetition/MatchingCompetition_atlas0_1.png


二进制
GameClient/Assets/ResIn/UI/MatchingCompetition/MatchingCompetition_fui.bytes


二进制
GameClient/Assets/ResIn/UI/RoleInfo/RoleInfo_fui.bytes


+ 8 - 0
GameClient/Assets/ResIn/UI/TurnTable.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: de43f13c4702e6941a6e011c3d00f65e
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

二进制
GameClient/Assets/ResIn/UI/TurnTable/TurnTable_atlas0!a.png


+ 120 - 0
GameClient/Assets/ResIn/UI/TurnTable/TurnTable_atlas0!a.png.meta

@@ -0,0 +1,120 @@
+fileFormatVersion: 2
+guid: fb37cbb4c52d1ef4f98b2cf29c732a2d
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: iPhone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: 50
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 1
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: Android
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: 50
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 1
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

二进制
GameClient/Assets/ResIn/UI/TurnTable/TurnTable_atlas0.png


+ 120 - 0
GameClient/Assets/ResIn/UI/TurnTable/TurnTable_atlas0.png.meta

@@ -0,0 +1,120 @@
+fileFormatVersion: 2
+guid: 1f386fae65b341c4daf2c7063a050b15
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: iPhone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: 50
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 1
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: Android
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: 50
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 1
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

二进制
GameClient/Assets/ResIn/UI/TurnTable/TurnTable_atlas0_1!a.png


+ 120 - 0
GameClient/Assets/ResIn/UI/TurnTable/TurnTable_atlas0_1!a.png.meta

@@ -0,0 +1,120 @@
+fileFormatVersion: 2
+guid: 62fd092adf1820e4288f0e02827fecd1
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: iPhone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: 50
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 1
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: Android
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: 50
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 1
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

二进制
GameClient/Assets/ResIn/UI/TurnTable/TurnTable_atlas0_1.png


+ 120 - 0
GameClient/Assets/ResIn/UI/TurnTable/TurnTable_atlas0_1.png.meta

@@ -0,0 +1,120 @@
+fileFormatVersion: 2
+guid: 7d18595955fe610479272b5642e18b48
+TextureImporter:
+  internalIDToNameTable: []
+  externalObjects: {}
+  serializedVersion: 11
+  mipmaps:
+    mipMapMode: 0
+    enableMipMap: 0
+    sRGBTexture: 1
+    linearTexture: 0
+    fadeOut: 0
+    borderMipMap: 0
+    mipMapsPreserveCoverage: 0
+    alphaTestReferenceValue: 0.5
+    mipMapFadeDistanceStart: 1
+    mipMapFadeDistanceEnd: 3
+  bumpmap:
+    convertToNormalMap: 0
+    externalNormalMap: 0
+    heightScale: 0.25
+    normalMapFilter: 0
+  isReadable: 0
+  streamingMipmaps: 0
+  streamingMipmapsPriority: 0
+  vTOnly: 0
+  grayScaleToAlpha: 0
+  generateCubemap: 6
+  cubemapConvolution: 0
+  seamlessCubemap: 0
+  textureFormat: 1
+  maxTextureSize: 2048
+  textureSettings:
+    serializedVersion: 2
+    filterMode: 1
+    aniso: 1
+    mipBias: 0
+    wrapU: 1
+    wrapV: 1
+    wrapW: 1
+  nPOTScale: 0
+  lightmap: 0
+  compressionQuality: 50
+  spriteMode: 1
+  spriteExtrude: 1
+  spriteMeshType: 1
+  alignment: 0
+  spritePivot: {x: 0.5, y: 0.5}
+  spritePixelsToUnits: 100
+  spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+  spriteGenerateFallbackPhysicsShape: 1
+  alphaUsage: 1
+  alphaIsTransparency: 1
+  spriteTessellationDetail: -1
+  textureType: 8
+  textureShape: 1
+  singleChannelComponent: 0
+  flipbookRows: 1
+  flipbookColumns: 1
+  maxTextureSizeSet: 0
+  compressionQualitySet: 0
+  textureFormatSet: 0
+  ignorePngGamma: 0
+  applyGammaDecoding: 0
+  platformSettings:
+  - serializedVersion: 3
+    buildTarget: DefaultTexturePlatform
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: iPhone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: 50
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 1
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: Android
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: 50
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 1
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
+  spriteSheet:
+    serializedVersion: 2
+    sprites: []
+    outline: []
+    physicsShape: []
+    bones: []
+    spriteID: 5e97eb03825dee720800000000000000
+    internalID: 0
+    vertices: []
+    indices: 
+    edges: []
+    weights: []
+    secondaryTextures: []
+  spritePackingTag: 
+  pSDRemoveMatte: 0
+  pSDShowRemoveMatteOption: 0
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

二进制
GameClient/Assets/ResIn/UI/TurnTable/TurnTable_fui.bytes


+ 7 - 0
GameClient/Assets/ResIn/UI/TurnTable/TurnTable_fui.bytes.meta

@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 2dc29e32ec6859440b16172536bf3878
+TextScriptImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: