浏览代码

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

# Conflicts:
#	GameClient/ProjectSettings/ProjectSettings.asset
hexiaojie 1 年之前
父节点
当前提交
e32204ff23
共有 100 个文件被更改,包括 3878 次插入164 次删除
  1. 1 1
      GameClient/Assets/Editor/Excel/ExcelReader.cs
  2. 2 0
      GameClient/Assets/Game/HotUpdate/Constant/ConstMessage.cs
  3. 7 2
      GameClient/Assets/Game/HotUpdate/Controller/GameController.cs
  4. 80 0
      GameClient/Assets/Game/HotUpdate/Data/ActivityDataManager.cs
  5. 14 0
      GameClient/Assets/Game/HotUpdate/Data/MainStoryDataManager.cs
  6. 1 1
      GameClient/Assets/Game/HotUpdate/Data/TimeTracingDataManager.cs
  7. 3 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ActivityZCJB.cs
  8. 74 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_Btn18.cs
  9. 1 1
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_Btn18.cs.meta
  10. 71 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_Button10.cs
  11. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_Button10.cs.meta
  12. 77 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_Button11.cs
  13. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_Button11.cs.meta
  14. 71 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_Button14.cs
  15. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_Button14.cs.meta
  16. 98 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_NewPlayersTipsUI.cs
  17. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_NewPlayersTipsUI.cs.meta
  18. 121 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_PearlRebateTipsUI.cs
  19. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_PearlRebateTipsUI.cs.meta
  20. 89 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_SevenDailyTipsUI.cs
  21. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_SevenDailyTipsUI.cs.meta
  22. 14 14
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ZGTHRewardItem.cs
  23. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ZGTHRewardItem.cs.meta
  24. 101 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ZGTHgiftDCTipsUI.cs
  25. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ZGTHgiftDCTipsUI.cs.meta
  26. 89 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ZGTHgiftTipsUI.cs
  27. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ZGTHgiftTipsUI.cs.meta
  28. 74 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_btn30.cs
  29. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_btn30.cs.meta
  30. 8 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic.meta
  31. 132 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic/UI_CardSyntheticUI.cs
  32. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic/UI_CardSyntheticUI.cs.meta
  33. 71 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic/UI_ComCardImgRes.cs
  34. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic/UI_ComCardImgRes.cs.meta
  35. 72 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic/UI_ComImgCard.cs
  36. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic/UI_ComImgCard.cs.meta
  37. 3 3
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ClothingDecomposeUI.cs
  38. 77 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_BtnModle3.cs
  39. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_BtnModle3.cs.meta
  40. 3 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_CompBonusBox.cs
  41. 74 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_Component8.cs
  42. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_Component8.cs.meta
  43. 4 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_ComponentListChapterItem.cs
  44. 16 4
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_MainUI.cs
  45. 2 2
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/RoleInfo/UI_RoleInfoUI.cs
  46. 81 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Store/UI_StoreZGDCUI.cs
  47. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Store/UI_StoreZGDCUI.cs.meta
  48. 89 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Store/UI_StoreZGTHitem.cs
  49. 11 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Store/UI_StoreZGTHitem.cs.meta
  50. 0 3
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TimeTracing/UI_TimeTracingLevelRewardUI.cs
  51. 3 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TimeTracing/UI_TimeTracingLevelUI.cs
  52. 6 9
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TimeTracing/UI_TimeTracingShowUI.cs
  53. 9 3
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TimeTracing/UI_proBarItem.cs
  54. 1 1
      GameClient/Assets/Game/HotUpdate/GameConfig.cs
  55. 5 0
      GameClient/Assets/Game/HotUpdate/GameGlobal.cs
  56. 69 0
      GameClient/Assets/Game/HotUpdate/ServerProxy/ActivitySProxy.cs
  57. 2 1
      GameClient/Assets/Game/HotUpdate/ServerProxy/ArenaSproxy.cs
  58. 43 0
      GameClient/Assets/Game/HotUpdate/ServerProxy/MainStorySProxy.cs
  59. 2 3
      GameClient/Assets/Game/HotUpdate/ServerProxy/TimeTracingSProxy.cs
  60. 1 0
      GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/ActivityZCJBView.cs
  61. 75 0
      GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/NewPlayerTipsView.cs
  62. 11 0
      GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/NewPlayerTipsView.cs.meta
  63. 199 0
      GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/PearlRebateTipsView.cs
  64. 11 0
      GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/PearlRebateTipsView.cs.meta
  65. 65 0
      GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/SevenDailyTipsView.cs
  66. 11 0
      GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/SevenDailyTipsView.cs.meta
  67. 173 0
      GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/ZGTHgiftDCTipsView.cs
  68. 11 0
      GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/ZGTHgiftDCTipsView.cs.meta
  69. 138 0
      GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/ZGTHgiftTipsView.cs
  70. 11 0
      GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/ZGTHgiftTipsView.cs.meta
  71. 18 7
      GameClient/Assets/Game/HotUpdate/Views/Bag/BagView.cs
  72. 350 0
      GameClient/Assets/Game/HotUpdate/Views/Card/CardSyntheticView.cs
  73. 11 0
      GameClient/Assets/Game/HotUpdate/Views/Card/CardSyntheticView.cs.meta
  74. 1 1
      GameClient/Assets/Game/HotUpdate/Views/ClothingDecompose/ClothingDecomposeView.cs
  75. 14 9
      GameClient/Assets/Game/HotUpdate/Views/InstanceZones/InstanceZonesView.cs
  76. 17 17
      GameClient/Assets/Game/HotUpdate/Views/LuckyBox/LuckyBoxBonusShowView.cs
  77. 3 2
      GameClient/Assets/Game/HotUpdate/Views/LuckyBox/LuckyBoxStarView.cs
  78. 131 0
      GameClient/Assets/Game/HotUpdate/Views/LuckyBox/LuckyBoxVideoView.cs
  79. 11 0
      GameClient/Assets/Game/HotUpdate/Views/LuckyBox/LuckyBoxVideoView.cs.meta
  80. 88 3
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryChapterListView.cs
  81. 15 2
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryChapterView.cs
  82. 1 0
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryController.cs
  83. 186 45
      GameClient/Assets/Game/HotUpdate/Views/MainUI/MainUIView.cs
  84. 2 0
      GameClient/Assets/Game/HotUpdate/Views/Poem/PoemPhotoView.cs
  85. 1 12
      GameClient/Assets/Game/HotUpdate/Views/Poem/PoemView.cs
  86. 2 0
      GameClient/Assets/Game/HotUpdate/Views/RoleInfo/GMPanelView.cs
  87. 10 0
      GameClient/Assets/Game/HotUpdate/Views/RoleInfo/RoleInfoView.cs
  88. 270 0
      GameClient/Assets/Game/HotUpdate/Views/Store/StoreZGDCView.cs
  89. 11 0
      GameClient/Assets/Game/HotUpdate/Views/Store/StoreZGDCView.cs.meta
  90. 1 0
      GameClient/Assets/Game/HotUpdate/Views/TimeTracing/TimeTracingLevelRankView.cs
  91. 2 1
      GameClient/Assets/Game/HotUpdate/Views/TimeTracing/TimeTracingLevelRewardView.cs
  92. 5 2
      GameClient/Assets/Game/HotUpdate/Views/TimeTracing/TimeTracingLevelView.cs
  93. 4 4
      GameClient/Assets/Game/HotUpdate/Views/TimeTracing/TimeTracingShowView.cs
  94. 9 9
      GameClient/Assets/Game/HotUpdate/Views/TimeTracing/TimeTracingSwitchView.cs
  95. 2 2
      GameClient/Assets/Game/Launcher/LauncherConfig.cs
  96. 12 0
      GameClient/Assets/ResIn/Fight/bg_fhl.png.meta
  97. 12 0
      GameClient/Assets/ResIn/Fight/fightBg.png.meta
  98. 12 0
      GameClient/Assets/ResIn/Fight/jingzhongh_bg.png.meta
  99. 12 0
      GameClient/Assets/ResIn/Fight/zd_bj_bja_1.png.meta
  100. 12 0
      GameClient/Assets/ResIn/Fight/zd_bj_bja_2.png.meta

+ 1 - 1
GameClient/Assets/Editor/Excel/ExcelReader.cs

@@ -23,7 +23,7 @@ namespace GFGEditor
             for (int i = 0; i < totalCount; i++)
             {
                 string filePath = files[i];
-                string fileName = Path.GetFileNameWithoutExtension(filePath);
+                string fileName = Path.GetFileNameWithoutExtension(filePath).Trim();
                 if (!fileName.Contains("~") && !fileName.StartsWith(".") && fileName != "")
                 {
                     EditorUtility.DisplayProgressBar("进度", $"fileNmae{fileName}", 1);

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

@@ -246,5 +246,7 @@ namespace GFGGame
         public const string TIMETRACINGUPDATE = "TIMETRACING_UPDATE";
         //时光回溯红点更新
         public const string TIMETRACINGREDUPDATE = "TIMETRACING_RED_UPDATE";
+        //章节奖励红点更新
+        public const string STORYCHAPREDUPDATE = "STORYCHAP_RED_UPDATE";
     }
 }

+ 7 - 2
GameClient/Assets/Game/HotUpdate/Controller/GameController.cs

@@ -216,6 +216,9 @@ namespace GFGGame
 
             await ShopSProxy.ReqShopInfo();
 
+            await ActivitySProxy.ReqGetNewPlayerBonusStatus();
+            await ActivitySProxy.GetNewPlayerOnceStatus();
+
             FieldDataManager.Instance.waitToShowFieldFightEndView = false;
             bool result = await FieldSProxy.ReqFieldInstanceInfos();
             if (result && FieldDataManager.Instance.fieldInfos.hasBonus)
@@ -229,11 +232,10 @@ namespace GFGGame
             GameGlobal.AfterDataInited = true;
             EventAgent.DispatchEvent(ConstMessage.AFTER_DATA_INITED);
 
-
-
             ItemProxy.GetItemAttributeInfos().Coroutine();
             ItemProxy.ReqGetItemCollect().Coroutine();
             MainStorySProxy.GetStoryBonusInfos().Coroutine();
+            MainStorySProxy.GetStoryBonusDate().Coroutine();
             CardSProxy.GetCardInfos().Coroutine();
             TaskSProxy.GetTaskInfos();
             BattlePassTaskSProxy.GetBattlePassInfo().Coroutine();     
@@ -290,6 +292,9 @@ namespace GFGGame
             GameGlobal.AutoSpecialOfferGiftBoxView = true;
             GameGlobal.AutoAcitivtyTipsLoginView = true;
             GameGlobal.AutoMonthlyCardView = true;
+            GameGlobal.AutoZGTHDCTips = true;
+            GameGlobal.AutoZGTHTips = true;
+            GameGlobal.AutoPearRebateTips = true;
             GameGlobal.AutoShowCompleted = false;
             GameGlobal.PreDataInited = false;
             GameGlobal.AfterDataInited = false;

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

@@ -38,6 +38,8 @@ namespace GFGGame
         /**********************************************************限时累充*************************************************/
         public int lastActLimitChargeId = 0;
         private int _actLimitChargeId = 0;
+        /**********************************************************限时累充*************************************************/
+        public bool IsGetNewPlayerReward = false;
         /// <summary>
         /// 当前限时累充活动id
         /// </summary>
@@ -210,6 +212,46 @@ namespace GFGGame
             }
             return true;
         }
+
+        public bool HaveGetSevenDayBonus()
+        {
+            foreach (int a in sevenDayLoginBonusStatusList)
+            {
+                if (a == 0) return true;
+            }
+            return false;
+        }
+        //判断最后可领取的奖励索引
+        public int NowSevenDayBonusDay(bool day = false)
+        {
+            if(AllSevenDayBonusGot())
+            {
+                return 8;
+            }
+            int a = 0;
+            int flog = -1;
+            if (day)
+            {
+                for (int j = 0; j < sevenDayLoginBonusStatusList.Count; j++)
+                {
+                    a = sevenDayLoginBonusStatusList[j];
+                    if (a == 1)
+                    {
+                        flog = j;
+                        return flog;
+                    }
+                }
+            }
+            else
+            {
+                for (int j = 0; j < sevenDayLoginBonusStatusList.Count; j++)
+                {
+                    a = sevenDayLoginBonusStatusList[j];
+                    if (a == 2) flog = j;
+                }
+            }
+            return flog;
+        }
         /******************************************************************************************************************/
 
         private int _firstChargeBonusStatus = 0;
@@ -277,5 +319,43 @@ namespace GFGGame
             }
             return false;
         }
+
+        //返回直购时间内打折扣的套装id
+        private int GetCheckDiscountSuitId()
+        {
+            return 0;
+        }
+        //珍珠赠礼是否弹窗
+        public bool CheckPearRebateTips(int id)
+        {
+            bool flog = true;
+            ActivityOpenCfg activityCfg = ActivityOpenCfgArray.Instance.GetCfg(id);   
+            for(int i =0;i< activityCfg.paramsArr.Length;i++)
+            {
+                ShopCfg shopCfg = ShopCfgArray.Instance.GetCfg(activityCfg.paramsArr[i]);
+                int buyNum = ShopDataManager.Instance.GetGoodsBuyNumById(shopCfg.id);
+                if (shopCfg.maxBuyNum == 0 || buyNum < shopCfg.maxBuyNum)
+                {
+                    flog = false;
+                    
+                }
+            }
+            if(!flog)
+            {
+                if (ActivityGlobalDataManager.Instance.IsActivityOpen(id))
+                {
+                    return true;
+                }
+                else
+                {
+                    return false;
+                }
+            }
+            else
+            {
+                return false;
+            }
+
+        }
     }
 }

+ 14 - 0
GameClient/Assets/Game/HotUpdate/Data/MainStoryDataManager.cs

@@ -168,5 +168,19 @@ namespace GFGGame
             return ConstInstanceZonesSubType.Normal;
         }
 
+        //章节奖励状态
+        public static Dictionary<int, int> ChapterRewardStatusDic = new Dictionary<int, int>();
+
+        public static bool GetChapterRewardStatus()
+        {
+            foreach(var item in ChapterRewardStatusDic)
+            {
+                if(item.Value == 1)
+                {
+                    return true;
+                }
+            }
+            return false;
+        }
     }
 }

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Data/TimeTracingDataManager.cs

@@ -12,7 +12,7 @@ namespace GFGGame
         //时光回溯,关卡编号
         public static int _currentChapterId = 62001;
         //时光回溯,合成套装副本当前展示套装
-        public static int SuitID = 201027;
+        public static int SuitID = 201030;
         //时光回溯刷新时间
         public static long RefreshTime = 0;
         //章节积分奖励列表

+ 3 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ActivityZCJB.cs

@@ -11,6 +11,7 @@ namespace UI.ActivityMain
         public GLoader m_icon;
         public GButton m_rewardBTn;
         public GTextField m_activityTime;
+        public GGroup m_time;
         public GLoader m_backBtn;
         public GLoader m_viewBtn;
         public GLoader m_shopBtn;
@@ -67,6 +68,7 @@ namespace UI.ActivityMain
             m_icon = (GLoader)comp.GetChild("icon");
             m_rewardBTn = (GButton)comp.GetChild("rewardBTn");
             m_activityTime = (GTextField)comp.GetChild("activityTime");
+            m_time = (GGroup)comp.GetChild("time");
             m_backBtn = (GLoader)comp.GetChild("backBtn");
             m_viewBtn = (GLoader)comp.GetChild("viewBtn");
             m_shopBtn = (GLoader)comp.GetChild("shopBtn");
@@ -79,6 +81,7 @@ namespace UI.ActivityMain
             m_icon = null;
             m_rewardBTn = null;
             m_activityTime = null;
+            m_time = null;
             m_backBtn = null;
             m_viewBtn = null;
             m_shopBtn = null;

+ 74 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_Btn18.cs

@@ -0,0 +1,74 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.ActivityMain
+{
+    public partial class UI_Btn18
+    {
+        public GButton target;
+        public Controller m_c1;
+        public GLoader m_bg;
+        public const string URL = "ui://4ht5s77uuje12q";
+        public const string PACKAGE_NAME = "ActivityMain";
+        public const string RES_NAME = "Btn18";
+        private static UI_Btn18 _proxy;
+
+        public static UI_Btn18 Create(GObject gObject = null)
+        {
+            var ui = new UI_Btn18();
+            if(gObject == null)
+            	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GButton)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_Btn18 Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_Btn18();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GButton)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_bg = (GLoader)comp.GetChild("bg");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_c1 = null;
+            m_bg = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 1 - 1
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ComItem000.cs.meta → GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_Btn18.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: d45730ad66d541446a4ec3e02c3d0311
+guid: e828c6a4601d5a74491cc3c4dd96489f
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 71 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_Button10.cs

@@ -0,0 +1,71 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.ActivityMain
+{
+    public partial class UI_Button10
+    {
+        public GButton target;
+        public GTextField m_Number;
+        public const string URL = "ui://4ht5s77uuje11t";
+        public const string PACKAGE_NAME = "ActivityMain";
+        public const string RES_NAME = "Button10";
+        private static UI_Button10 _proxy;
+
+        public static UI_Button10 Create(GObject gObject = null)
+        {
+            var ui = new UI_Button10();
+            if(gObject == null)
+            	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GButton)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_Button10 Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_Button10();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GButton)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_Number = (GTextField)comp.GetChild("Number");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_Number = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_Button10.cs.meta

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

+ 77 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_Button11.cs

@@ -0,0 +1,77 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.ActivityMain
+{
+    public partial class UI_Button11
+    {
+        public GButton target;
+        public Controller m_c1;
+        public GLoader m_bg;
+        public GLoader m_bgSelect;
+        public const string URL = "ui://4ht5s77uuje124";
+        public const string PACKAGE_NAME = "ActivityMain";
+        public const string RES_NAME = "Button11";
+        private static UI_Button11 _proxy;
+
+        public static UI_Button11 Create(GObject gObject = null)
+        {
+            var ui = new UI_Button11();
+            if(gObject == null)
+            	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GButton)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_Button11 Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_Button11();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GButton)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_bg = (GLoader)comp.GetChild("bg");
+            m_bgSelect = (GLoader)comp.GetChild("bgSelect");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_c1 = null;
+            m_bg = null;
+            m_bgSelect = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_Button11.cs.meta

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

+ 71 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_Button14.cs

@@ -0,0 +1,71 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.ActivityMain
+{
+    public partial class UI_Button14
+    {
+        public GButton target;
+        public GTextField m_Number;
+        public const string URL = "ui://4ht5s77uuje12x";
+        public const string PACKAGE_NAME = "ActivityMain";
+        public const string RES_NAME = "Button14";
+        private static UI_Button14 _proxy;
+
+        public static UI_Button14 Create(GObject gObject = null)
+        {
+            var ui = new UI_Button14();
+            if(gObject == null)
+            	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GButton)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_Button14 Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_Button14();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GButton)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_Number = (GTextField)comp.GetChild("Number");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_Number = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_Button14.cs.meta

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

+ 98 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_NewPlayersTipsUI.cs

@@ -0,0 +1,98 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.ActivityMain
+{
+    public partial class UI_NewPlayersTipsUI
+    {
+        public GComponent target;
+        public GLoader m_btnBack;
+        public GLoader m_icon;
+        public GTextField m_activityDesc;
+        public GButton m_GetRewardBtn;
+        public GLoader m_backBtn;
+        public GGraph m_effectBtn;
+        public GGraph m_effectBG;
+        public Transition m_t0;
+        public Transition m_t1;
+        public Transition m_t4;
+        public const string URL = "ui://4ht5s77uqdyb1f";
+        public const string PACKAGE_NAME = "ActivityMain";
+        public const string RES_NAME = "NewPlayersTipsUI";
+        private static UI_NewPlayersTipsUI _proxy;
+
+        public static UI_NewPlayersTipsUI Create(GObject gObject = null)
+        {
+            var ui = new UI_NewPlayersTipsUI();
+            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_NewPlayersTipsUI Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_NewPlayersTipsUI();
+            }
+            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_btnBack = (GLoader)comp.GetChild("btnBack");
+            m_icon = (GLoader)comp.GetChild("icon");
+            m_activityDesc = (GTextField)comp.GetChild("activityDesc");
+            m_GetRewardBtn = (GButton)comp.GetChild("GetRewardBtn");
+            m_backBtn = (GLoader)comp.GetChild("backBtn");
+            m_effectBtn = (GGraph)comp.GetChild("effectBtn");
+            m_effectBG = (GGraph)comp.GetChild("effectBG");
+            m_t0 = comp.GetTransition("t0");
+            m_t1 = comp.GetTransition("t1");
+            m_t4 = comp.GetTransition("t4");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_btnBack = null;
+            m_icon = null;
+            m_activityDesc = null;
+            m_GetRewardBtn = null;
+            m_backBtn = null;
+            m_effectBtn = null;
+            m_effectBG = null;
+            m_t0 = null;
+            m_t1 = null;
+            m_t4 = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_NewPlayersTipsUI.cs.meta

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

+ 121 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_PearlRebateTipsUI.cs

@@ -0,0 +1,121 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.ActivityMain
+{
+    public partial class UI_PearlRebateTipsUI
+    {
+        public GComponent target;
+        public Controller m_c1;
+        public GTextField m_timeText;
+        public UI_Button11 m_one;
+        public UI_Btn18 m_two;
+        public UI_btn30 m_three;
+        public GComponent m_item0;
+        public GComponent m_item1;
+        public GComponent m_item2;
+        public UI_Button10 m_buyBtn;
+        public UI_Button14 m_gotbtn;
+        public GLoader m_backBtn;
+        public GGraph m_effectBtn;
+        public GGraph m_effectBG;
+        public Transition m_t0;
+        public Transition m_t1;
+        public Transition m_t4;
+        public const string URL = "ui://4ht5s77u7xo51s";
+        public const string PACKAGE_NAME = "ActivityMain";
+        public const string RES_NAME = "PearlRebateTipsUI";
+        private static UI_PearlRebateTipsUI _proxy;
+
+        public static UI_PearlRebateTipsUI Create(GObject gObject = null)
+        {
+            var ui = new UI_PearlRebateTipsUI();
+            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_PearlRebateTipsUI Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_PearlRebateTipsUI();
+            }
+            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_timeText = (GTextField)comp.GetChild("timeText");
+            m_one = (UI_Button11)UI_Button11.Create(comp.GetChild("one"));
+            m_two = (UI_Btn18)UI_Btn18.Create(comp.GetChild("two"));
+            m_three = (UI_btn30)UI_btn30.Create(comp.GetChild("three"));
+            m_item0 = (GComponent)comp.GetChild("item0");
+            m_item1 = (GComponent)comp.GetChild("item1");
+            m_item2 = (GComponent)comp.GetChild("item2");
+            m_buyBtn = (UI_Button10)UI_Button10.Create(comp.GetChild("buyBtn"));
+            m_gotbtn = (UI_Button14)UI_Button14.Create(comp.GetChild("gotbtn"));
+            m_backBtn = (GLoader)comp.GetChild("backBtn");
+            m_effectBtn = (GGraph)comp.GetChild("effectBtn");
+            m_effectBG = (GGraph)comp.GetChild("effectBG");
+            m_t0 = comp.GetTransition("t0");
+            m_t1 = comp.GetTransition("t1");
+            m_t4 = comp.GetTransition("t4");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_c1 = null;
+            m_timeText = null;
+            m_one.Dispose();
+            m_one = null;
+            m_two.Dispose();
+            m_two = null;
+            m_three.Dispose();
+            m_three = null;
+            m_item0 = null;
+            m_item1 = null;
+            m_item2 = null;
+            m_buyBtn.Dispose();
+            m_buyBtn = null;
+            m_gotbtn.Dispose();
+            m_gotbtn = null;
+            m_backBtn = null;
+            m_effectBtn = null;
+            m_effectBG = null;
+            m_t0 = null;
+            m_t1 = null;
+            m_t4 = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_PearlRebateTipsUI.cs.meta

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

+ 89 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_SevenDailyTipsUI.cs

@@ -0,0 +1,89 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.ActivityMain
+{
+    public partial class UI_SevenDailyTipsUI
+    {
+        public GComponent target;
+        public GLoader m_btnBack;
+        public GTextField m_activityDesc;
+        public GLoader m_icon;
+        public GLoader m_backBtn;
+        public Transition m_t0;
+        public Transition m_t1;
+        public Transition m_t4;
+        public const string URL = "ui://4ht5s77uymxo1o";
+        public const string PACKAGE_NAME = "ActivityMain";
+        public const string RES_NAME = "SevenDailyTipsUI";
+        private static UI_SevenDailyTipsUI _proxy;
+
+        public static UI_SevenDailyTipsUI Create(GObject gObject = null)
+        {
+            var ui = new UI_SevenDailyTipsUI();
+            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_SevenDailyTipsUI Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_SevenDailyTipsUI();
+            }
+            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_btnBack = (GLoader)comp.GetChild("btnBack");
+            m_activityDesc = (GTextField)comp.GetChild("activityDesc");
+            m_icon = (GLoader)comp.GetChild("icon");
+            m_backBtn = (GLoader)comp.GetChild("backBtn");
+            m_t0 = comp.GetTransition("t0");
+            m_t1 = comp.GetTransition("t1");
+            m_t4 = comp.GetTransition("t4");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_btnBack = null;
+            m_activityDesc = null;
+            m_icon = null;
+            m_backBtn = null;
+            m_t0 = null;
+            m_t1 = null;
+            m_t4 = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_SevenDailyTipsUI.cs.meta

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

+ 14 - 14
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ComItem000.cs → GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ZGTHRewardItem.cs

@@ -4,19 +4,19 @@ using FairyGUI;
 
 namespace UI.ActivityMain
 {
-    public partial class UI_ComItem000
+    public partial class UI_ZGTHRewardItem
     {
         public GComponent target;
-        public GComponent m_comItemIcon;
-        public GTextField m_txtName;
-        public const string URL = "ui://4ht5s77uqbf4v";
+        public GComponent m_item;
+        public GTextField m_name;
+        public const string URL = "ui://4ht5s77uuje12d";
         public const string PACKAGE_NAME = "ActivityMain";
-        public const string RES_NAME = "ComItem000";
-        private static UI_ComItem000 _proxy;
+        public const string RES_NAME = "ZGTHRewardItem";
+        private static UI_ZGTHRewardItem _proxy;
 
-        public static UI_ComItem000 Create(GObject gObject = null)
+        public static UI_ZGTHRewardItem Create(GObject gObject = null)
         {
-            var ui = new UI_ComItem000();
+            var ui = new UI_ZGTHRewardItem();
             if(gObject == null)
             	ui.target =  (GComponent)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
             else
@@ -25,11 +25,11 @@ namespace UI.ActivityMain
             return ui;
         }
 
-        public static UI_ComItem000 Proxy(GObject gObject = null)
+        public static UI_ZGTHRewardItem Proxy(GObject gObject = null)
         {
             if(_proxy == null)
             {
-                _proxy = new UI_ComItem000();
+                _proxy = new UI_ZGTHRewardItem();
             }
             var ui = _proxy;
             if(gObject == null)
@@ -56,13 +56,13 @@ namespace UI.ActivityMain
 
         private void Init(GComponent comp)
         {
-            m_comItemIcon = (GComponent)comp.GetChild("comItemIcon");
-            m_txtName = (GTextField)comp.GetChild("txtName");
+            m_item = (GComponent)comp.GetChild("item");
+            m_name = (GTextField)comp.GetChild("name");
         }
         public void Dispose(bool disposeTarget = false)
         {
-            m_comItemIcon = null;
-            m_txtName = null;
+            m_item = null;
+            m_name = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ZGTHRewardItem.cs.meta

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

+ 101 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ZGTHgiftDCTipsUI.cs

@@ -0,0 +1,101 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.ActivityMain
+{
+    public partial class UI_ZGTHgiftDCTipsUI
+    {
+        public GComponent target;
+        public GLoader m_suitIcon;
+        public GTextField m_txtName;
+        public GList m_Itemlist;
+        public GButton m_btnCharge;
+        public GTextField m_timeText;
+        public GButton m_btnClose;
+        public GTextField m_discountText;
+        public GGroup m_DiscountGroud;
+        public Transition m_t0;
+        public Transition m_t1;
+        public Transition m_t4;
+        public const string URL = "ui://4ht5s77uuje122";
+        public const string PACKAGE_NAME = "ActivityMain";
+        public const string RES_NAME = "ZGTHgiftDCTipsUI";
+        private static UI_ZGTHgiftDCTipsUI _proxy;
+
+        public static UI_ZGTHgiftDCTipsUI Create(GObject gObject = null)
+        {
+            var ui = new UI_ZGTHgiftDCTipsUI();
+            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_ZGTHgiftDCTipsUI Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ZGTHgiftDCTipsUI();
+            }
+            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_suitIcon = (GLoader)comp.GetChild("suitIcon");
+            m_txtName = (GTextField)comp.GetChild("txtName");
+            m_Itemlist = (GList)comp.GetChild("Itemlist");
+            m_btnCharge = (GButton)comp.GetChild("btnCharge");
+            m_timeText = (GTextField)comp.GetChild("timeText");
+            m_btnClose = (GButton)comp.GetChild("btnClose");
+            m_discountText = (GTextField)comp.GetChild("discountText");
+            m_DiscountGroud = (GGroup)comp.GetChild("DiscountGroud");
+            m_t0 = comp.GetTransition("t0");
+            m_t1 = comp.GetTransition("t1");
+            m_t4 = comp.GetTransition("t4");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_suitIcon = null;
+            m_txtName = null;
+            m_Itemlist = null;
+            m_btnCharge = null;
+            m_timeText = null;
+            m_btnClose = null;
+            m_discountText = null;
+            m_DiscountGroud = null;
+            m_t0 = null;
+            m_t1 = null;
+            m_t4 = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ZGTHgiftDCTipsUI.cs.meta

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

+ 89 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ZGTHgiftTipsUI.cs

@@ -0,0 +1,89 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.ActivityMain
+{
+    public partial class UI_ZGTHgiftTipsUI
+    {
+        public GComponent target;
+        public GList m_Itemlist;
+        public GButton m_btnBuy;
+        public GButton m_btnClose;
+        public GTextField m_timeText;
+        public Transition m_t0;
+        public Transition m_t1;
+        public Transition m_t4;
+        public const string URL = "ui://4ht5s77uuje11x";
+        public const string PACKAGE_NAME = "ActivityMain";
+        public const string RES_NAME = "ZGTHgiftTipsUI";
+        private static UI_ZGTHgiftTipsUI _proxy;
+
+        public static UI_ZGTHgiftTipsUI Create(GObject gObject = null)
+        {
+            var ui = new UI_ZGTHgiftTipsUI();
+            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_ZGTHgiftTipsUI Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ZGTHgiftTipsUI();
+            }
+            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_Itemlist = (GList)comp.GetChild("Itemlist");
+            m_btnBuy = (GButton)comp.GetChild("btnBuy");
+            m_btnClose = (GButton)comp.GetChild("btnClose");
+            m_timeText = (GTextField)comp.GetChild("timeText");
+            m_t0 = comp.GetTransition("t0");
+            m_t1 = comp.GetTransition("t1");
+            m_t4 = comp.GetTransition("t4");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_Itemlist = null;
+            m_btnBuy = null;
+            m_btnClose = null;
+            m_timeText = null;
+            m_t0 = null;
+            m_t1 = null;
+            m_t4 = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ZGTHgiftTipsUI.cs.meta

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

+ 74 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_btn30.cs

@@ -0,0 +1,74 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.ActivityMain
+{
+    public partial class UI_btn30
+    {
+        public GButton target;
+        public Controller m_c1;
+        public GLoader m_bg;
+        public const string URL = "ui://4ht5s77uuje12s";
+        public const string PACKAGE_NAME = "ActivityMain";
+        public const string RES_NAME = "btn30";
+        private static UI_btn30 _proxy;
+
+        public static UI_btn30 Create(GObject gObject = null)
+        {
+            var ui = new UI_btn30();
+            if(gObject == null)
+            	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GButton)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_btn30 Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_btn30();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GButton)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_bg = (GLoader)comp.GetChild("bg");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_c1 = null;
+            m_bg = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_btn30.cs.meta

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

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

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

+ 132 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic/UI_CardSyntheticUI.cs

@@ -0,0 +1,132 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.CardSynthetic
+{
+    public partial class UI_CardSyntheticUI
+    {
+        public GComponent target;
+        public GLoader m_loaBg;
+        public GLoader m_loaBg2;
+        public UI_ComImgCard m_comImgCard;
+        public GList m_listMaterias;
+        public GButton m_btnProduction;
+        public GComponent m_comCostCurrency;
+        public GTextField m_txtGong;
+        public GTextField m_txtShang;
+        public GTextField m_txtJue;
+        public GTextField m_txtZhi;
+        public GLoader m_loaRarity;
+        public GTextField m_txtName0;
+        public GTextField m_txtName1;
+        public GTextField m_txtName2;
+        public GTextField m_txtName3;
+        public GTextField m_txtName4;
+        public GButton m_btnBack;
+        public GButton m_btnHome;
+        public GComponent m_valueBar;
+        public Transition m_hide;
+        public Transition m_show;
+        public const string URL = "ui://c6tzok8ouje12n";
+        public const string PACKAGE_NAME = "CardSynthetic";
+        public const string RES_NAME = "CardSyntheticUI";
+        private static UI_CardSyntheticUI _proxy;
+
+        public static UI_CardSyntheticUI Create(GObject gObject = null)
+        {
+            var ui = new UI_CardSyntheticUI();
+            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_CardSyntheticUI Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_CardSyntheticUI();
+            }
+            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_loaBg = (GLoader)comp.GetChild("loaBg");
+            m_loaBg2 = (GLoader)comp.GetChild("loaBg2");
+            m_comImgCard = (UI_ComImgCard)UI_ComImgCard.Create(comp.GetChild("comImgCard"));
+            m_listMaterias = (GList)comp.GetChild("listMaterias");
+            m_btnProduction = (GButton)comp.GetChild("btnProduction");
+            m_comCostCurrency = (GComponent)comp.GetChild("comCostCurrency");
+            m_txtGong = (GTextField)comp.GetChild("txtGong");
+            m_txtShang = (GTextField)comp.GetChild("txtShang");
+            m_txtJue = (GTextField)comp.GetChild("txtJue");
+            m_txtZhi = (GTextField)comp.GetChild("txtZhi");
+            m_loaRarity = (GLoader)comp.GetChild("loaRarity");
+            m_txtName0 = (GTextField)comp.GetChild("txtName0");
+            m_txtName1 = (GTextField)comp.GetChild("txtName1");
+            m_txtName2 = (GTextField)comp.GetChild("txtName2");
+            m_txtName3 = (GTextField)comp.GetChild("txtName3");
+            m_txtName4 = (GTextField)comp.GetChild("txtName4");
+            m_btnBack = (GButton)comp.GetChild("btnBack");
+            m_btnHome = (GButton)comp.GetChild("btnHome");
+            m_valueBar = (GComponent)comp.GetChild("valueBar");
+            m_hide = comp.GetTransition("hide");
+            m_show = comp.GetTransition("show");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_loaBg = null;
+            m_loaBg2 = null;
+            m_comImgCard.Dispose();
+            m_comImgCard = null;
+            m_listMaterias = null;
+            m_btnProduction = null;
+            m_comCostCurrency = null;
+            m_txtGong = null;
+            m_txtShang = null;
+            m_txtJue = null;
+            m_txtZhi = null;
+            m_loaRarity = null;
+            m_txtName0 = null;
+            m_txtName1 = null;
+            m_txtName2 = null;
+            m_txtName3 = null;
+            m_txtName4 = null;
+            m_btnBack = null;
+            m_btnHome = null;
+            m_valueBar = null;
+            m_hide = null;
+            m_show = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic/UI_CardSyntheticUI.cs.meta

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

+ 71 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic/UI_ComCardImgRes.cs

@@ -0,0 +1,71 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.CardSynthetic
+{
+    public partial class UI_ComCardImgRes
+    {
+        public GComponent target;
+        public GLoader m_loaCard;
+        public const string URL = "ui://c6tzok8ouje16";
+        public const string PACKAGE_NAME = "CardSynthetic";
+        public const string RES_NAME = "ComCardImgRes";
+        private static UI_ComCardImgRes _proxy;
+
+        public static UI_ComCardImgRes Create(GObject gObject = null)
+        {
+            var ui = new UI_ComCardImgRes();
+            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_ComCardImgRes Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ComCardImgRes();
+            }
+            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_loaCard = (GLoader)comp.GetChild("loaCard");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_loaCard = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic/UI_ComCardImgRes.cs.meta

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

+ 72 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic/UI_ComImgCard.cs

@@ -0,0 +1,72 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.CardSynthetic
+{
+    public partial class UI_ComImgCard
+    {
+        public GComponent target;
+        public UI_ComCardImgRes m_ComCardImgRes;
+        public const string URL = "ui://c6tzok8ouje15";
+        public const string PACKAGE_NAME = "CardSynthetic";
+        public const string RES_NAME = "ComImgCard";
+        private static UI_ComImgCard _proxy;
+
+        public static UI_ComImgCard Create(GObject gObject = null)
+        {
+            var ui = new UI_ComImgCard();
+            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_ComImgCard Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_ComImgCard();
+            }
+            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_ComCardImgRes = (UI_ComCardImgRes)UI_ComCardImgRes.Create(comp.GetChild("ComCardImgRes"));
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_ComCardImgRes.Dispose();
+            m_ComCardImgRes = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic/UI_ComImgCard.cs.meta

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

+ 3 - 3
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingDecompose/UI_ClothingDecomposeUI.cs

@@ -10,7 +10,7 @@ namespace UI.ClothingDecompose
         public Controller m_c1;
         public Controller m_TouchSelect;
         public Controller m_clothesType;
-        public GLoader m_loaBg;
+        public GLoader m_loadBg;
         public GLoader m_Top_img;
         public UI_Button6 m_btnClothing;
         public UI_Button6 m_btnSkillBook;
@@ -77,7 +77,7 @@ namespace UI.ClothingDecompose
             m_c1 = comp.GetController("c1");
             m_TouchSelect = comp.GetController("TouchSelect");
             m_clothesType = comp.GetController("clothesType");
-            m_loaBg = (GLoader)comp.GetChild("loaBg");
+            m_loadBg = (GLoader)comp.GetChild("loadBg");
             m_Top_img = (GLoader)comp.GetChild("Top_img");
             m_btnClothing = (UI_Button6)UI_Button6.Create(comp.GetChild("btnClothing"));
             m_btnSkillBook = (UI_Button6)UI_Button6.Create(comp.GetChild("btnSkillBook"));
@@ -100,7 +100,7 @@ namespace UI.ClothingDecompose
             m_c1 = null;
             m_TouchSelect = null;
             m_clothesType = null;
-            m_loaBg = null;
+            m_loadBg = null;
             m_Top_img = null;
             m_btnClothing.Dispose();
             m_btnClothing = null;

+ 77 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_BtnModle3.cs

@@ -0,0 +1,77 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.Main
+{
+    public partial class UI_BtnModle3
+    {
+        public GButton target;
+        public GLoader m_bg;
+        public GLoader m_Icon;
+        public GLoader m_textIcon;
+        public const string URL = "ui://mfvz4q8kg91j9fzc";
+        public const string PACKAGE_NAME = "Main";
+        public const string RES_NAME = "BtnModle3";
+        private static UI_BtnModle3 _proxy;
+
+        public static UI_BtnModle3 Create(GObject gObject = null)
+        {
+            var ui = new UI_BtnModle3();
+            if(gObject == null)
+            	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GButton)gObject;
+            ui.Init(ui.target);
+            return ui;
+        }
+
+        public static UI_BtnModle3 Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_BtnModle3();
+            }
+            var ui = _proxy;
+            if(gObject == null)
+            	ui.target =  (GButton)UIPackage.CreateObject(PACKAGE_NAME, RES_NAME);
+            else
+            	ui.target =  (GButton)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_Icon = (GLoader)comp.GetChild("Icon");
+            m_textIcon = (GLoader)comp.GetChild("textIcon");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_bg = null;
+            m_Icon = null;
+            m_textIcon = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_BtnModle3.cs.meta

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

+ 3 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_CompBonusBox.cs

@@ -9,6 +9,7 @@ namespace UI.Main
         public GComponent target;
         public Controller m_c1;
         public GLoader m_icon;
+        public GGraph m_effect;
         public GImage m_iconActive;
         public GTextField m_txtName;
         public const string URL = "ui://mfvz4q8kv3542b";
@@ -60,6 +61,7 @@ namespace UI.Main
         {
             m_c1 = comp.GetController("c1");
             m_icon = (GLoader)comp.GetChild("icon");
+            m_effect = (GGraph)comp.GetChild("effect");
             m_iconActive = (GImage)comp.GetChild("iconActive");
             m_txtName = (GTextField)comp.GetChild("txtName");
         }
@@ -67,6 +69,7 @@ namespace UI.Main
         {
             m_c1 = null;
             m_icon = null;
+            m_effect = null;
             m_iconActive = null;
             m_txtName = null;
             if(disposeTarget && target != null)

+ 74 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_Component8.cs

@@ -0,0 +1,74 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.Main
+{
+    public partial class UI_Component8
+    {
+        public GComponent target;
+        public GLoader m_rewardIcon;
+        public GTextField m_rewardNum;
+        public const string URL = "ui://mfvz4q8kg91j9fzb";
+        public const string PACKAGE_NAME = "Main";
+        public const string RES_NAME = "Component8";
+        private static UI_Component8 _proxy;
+
+        public static UI_Component8 Create(GObject gObject = null)
+        {
+            var ui = new UI_Component8();
+            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_Component8 Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_Component8();
+            }
+            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_rewardIcon = (GLoader)comp.GetChild("rewardIcon");
+            m_rewardNum = (GTextField)comp.GetChild("rewardNum");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_rewardIcon = null;
+            m_rewardNum = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Main/UI_Component8.cs.meta

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

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

@@ -18,6 +18,7 @@ namespace UI.Main
         public GLoader m_numBg;
         public GTextField m_txtCurProgress;
         public GTextField m_txtMaxProgress;
+        public UI_Component8 m_reward;
         public GImage m_imgLockBg;
         public GTextField m_txtLockDesc;
         public const string URL = "ui://mfvz4q8kslb41t";
@@ -78,6 +79,7 @@ namespace UI.Main
             m_numBg = (GLoader)comp.GetChild("numBg");
             m_txtCurProgress = (GTextField)comp.GetChild("txtCurProgress");
             m_txtMaxProgress = (GTextField)comp.GetChild("txtMaxProgress");
+            m_reward = (UI_Component8)UI_Component8.Create(comp.GetChild("reward"));
             m_imgLockBg = (GImage)comp.GetChild("imgLockBg");
             m_txtLockDesc = (GTextField)comp.GetChild("txtLockDesc");
         }
@@ -95,6 +97,8 @@ namespace UI.Main
             m_numBg = null;
             m_txtCurProgress = null;
             m_txtMaxProgress = null;
+            m_reward.Dispose();
+            m_reward = null;
             m_imgLockBg = null;
             m_txtLockDesc = null;
             if(disposeTarget && target != null)

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

@@ -39,8 +39,11 @@ namespace UI.Main
         public UI_ButtonModle1 m_btnXiuFang;
         public UI_ButtonModle1 m_btnHuanZhuang;
         public UI_ButtonModleEffect m_btnHaiZhiShi;
-        public UI_BtnModle1 m_btnNewYearRedEnvelope;
         public UI_BtnModle1 m_btnDailyWelfare;
+        public UI_BtnModle1 m_btnNewPlayerReward;
+        public UI_BtnModle3 m_btnSevenReward;
+        public UI_BtnModle1 m_btnPearRebate;
+        public UI_BtnModle1 m_btnNewYearRedEnvelope;
         public UI_BtnModle1 m_btnActivityDay7;
         public GGroup m_AllUI;
         public GGraph m_touchMask;
@@ -126,8 +129,11 @@ namespace UI.Main
             m_btnXiuFang = (UI_ButtonModle1)UI_ButtonModle1.Create(comp.GetChild("btnXiuFang"));
             m_btnHuanZhuang = (UI_ButtonModle1)UI_ButtonModle1.Create(comp.GetChild("btnHuanZhuang"));
             m_btnHaiZhiShi = (UI_ButtonModleEffect)UI_ButtonModleEffect.Create(comp.GetChild("btnHaiZhiShi"));
-            m_btnNewYearRedEnvelope = (UI_BtnModle1)UI_BtnModle1.Create(comp.GetChild("btnNewYearRedEnvelope"));
             m_btnDailyWelfare = (UI_BtnModle1)UI_BtnModle1.Create(comp.GetChild("btnDailyWelfare"));
+            m_btnNewPlayerReward = (UI_BtnModle1)UI_BtnModle1.Create(comp.GetChild("btnNewPlayerReward"));
+            m_btnSevenReward = (UI_BtnModle3)UI_BtnModle3.Create(comp.GetChild("btnSevenReward"));
+            m_btnPearRebate = (UI_BtnModle1)UI_BtnModle1.Create(comp.GetChild("btnPearRebate"));
+            m_btnNewYearRedEnvelope = (UI_BtnModle1)UI_BtnModle1.Create(comp.GetChild("btnNewYearRedEnvelope"));
             m_btnActivityDay7 = (UI_BtnModle1)UI_BtnModle1.Create(comp.GetChild("btnActivityDay7"));
             m_AllUI = (GGroup)comp.GetChild("AllUI");
             m_touchMask = (GGraph)comp.GetChild("touchMask");
@@ -190,10 +196,16 @@ namespace UI.Main
             m_btnHuanZhuang = null;
             m_btnHaiZhiShi.Dispose();
             m_btnHaiZhiShi = null;
-            m_btnNewYearRedEnvelope.Dispose();
-            m_btnNewYearRedEnvelope = null;
             m_btnDailyWelfare.Dispose();
             m_btnDailyWelfare = null;
+            m_btnNewPlayerReward.Dispose();
+            m_btnNewPlayerReward = null;
+            m_btnSevenReward.Dispose();
+            m_btnSevenReward = null;
+            m_btnPearRebate.Dispose();
+            m_btnPearRebate = null;
+            m_btnNewYearRedEnvelope.Dispose();
+            m_btnNewYearRedEnvelope = null;
             m_btnActivityDay7.Dispose();
             m_btnActivityDay7 = null;
             m_AllUI = null;

+ 2 - 2
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/RoleInfo/UI_RoleInfoUI.cs

@@ -10,7 +10,7 @@ namespace UI.RoleInfo
         public Controller m_type;
         public GLoader m_loaBg;
         public GLoader m_Top_img;
-        public GTextField m_txtVersion;
+        public GRichTextField m_txtVersion;
         public GButton m_btnHelp;
         public GButton m_btnBack;
         public GTextField m_leagueName;
@@ -84,7 +84,7 @@ namespace UI.RoleInfo
             m_type = comp.GetController("type");
             m_loaBg = (GLoader)comp.GetChild("loaBg");
             m_Top_img = (GLoader)comp.GetChild("Top_img");
-            m_txtVersion = (GTextField)comp.GetChild("txtVersion");
+            m_txtVersion = (GRichTextField)comp.GetChild("txtVersion");
             m_btnHelp = (GButton)comp.GetChild("btnHelp");
             m_btnBack = (GButton)comp.GetChild("btnBack");
             m_leagueName = (GTextField)comp.GetChild("leagueName");

+ 81 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Store/UI_StoreZGDCUI.cs

@@ -0,0 +1,81 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.Store
+{
+    public partial class UI_StoreZGDCUI
+    {
+        public GComponent target;
+        public GTextField m_txtGiftBag;
+        public GList m_suitList;
+        public UI_StoreMonthList m_listCom;
+        public GComponent m_valueBar;
+        public const string URL = "ui://p9mtgheouje1tem";
+        public const string PACKAGE_NAME = "Store";
+        public const string RES_NAME = "StoreZGDCUI";
+        private static UI_StoreZGDCUI _proxy;
+
+        public static UI_StoreZGDCUI Create(GObject gObject = null)
+        {
+            var ui = new UI_StoreZGDCUI();
+            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_StoreZGDCUI Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_StoreZGDCUI();
+            }
+            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_txtGiftBag = (GTextField)comp.GetChild("txtGiftBag");
+            m_suitList = (GList)comp.GetChild("suitList");
+            m_listCom = (UI_StoreMonthList)UI_StoreMonthList.Create(comp.GetChild("listCom"));
+            m_valueBar = (GComponent)comp.GetChild("valueBar");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_txtGiftBag = null;
+            m_suitList = null;
+            m_listCom.Dispose();
+            m_listCom = null;
+            m_valueBar = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Store/UI_StoreZGDCUI.cs.meta

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

+ 89 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Store/UI_StoreZGTHitem.cs

@@ -0,0 +1,89 @@
+/** This is an automatically generated class by FairyGUI. Please do not modify it. **/
+
+using FairyGUI;
+
+namespace UI.Store
+{
+    public partial class UI_StoreZGTHitem
+    {
+        public GComponent target;
+        public GLoader m_suitIcon;
+        public GTextField m_txtName;
+        public GButton m_btnCharge;
+        public GTextField m_discountText;
+        public GGroup m_DiscountGroud;
+        public GTextField m_timeText;
+        public GImage m_tyDesc;
+        public const string URL = "ui://p9mtgheouje1tf8";
+        public const string PACKAGE_NAME = "Store";
+        public const string RES_NAME = "StoreZGTHitem";
+        private static UI_StoreZGTHitem _proxy;
+
+        public static UI_StoreZGTHitem Create(GObject gObject = null)
+        {
+            var ui = new UI_StoreZGTHitem();
+            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_StoreZGTHitem Proxy(GObject gObject = null)
+        {
+            if(_proxy == null)
+            {
+                _proxy = new UI_StoreZGTHitem();
+            }
+            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_suitIcon = (GLoader)comp.GetChild("suitIcon");
+            m_txtName = (GTextField)comp.GetChild("txtName");
+            m_btnCharge = (GButton)comp.GetChild("btnCharge");
+            m_discountText = (GTextField)comp.GetChild("discountText");
+            m_DiscountGroud = (GGroup)comp.GetChild("DiscountGroud");
+            m_timeText = (GTextField)comp.GetChild("timeText");
+            m_tyDesc = (GImage)comp.GetChild("tyDesc");
+        }
+        public void Dispose(bool disposeTarget = false)
+        {
+            m_suitIcon = null;
+            m_txtName = null;
+            m_btnCharge = null;
+            m_discountText = null;
+            m_DiscountGroud = null;
+            m_timeText = null;
+            m_tyDesc = null;
+            if(disposeTarget && target != null)
+            {
+                target.RemoveFromParent();
+                target.Dispose();
+            }
+            target = null;
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/Store/UI_StoreZGTHitem.cs.meta

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

+ 0 - 3
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TimeTracing/UI_TimeTracingLevelRewardUI.cs

@@ -7,7 +7,6 @@ namespace UI.TimeTracing
     public partial class UI_TimeTracingLevelRewardUI
     {
         public GComponent target;
-        public GLoader m_backBtn;
         public GLoader m_bg;
         public GTextField m_txtScore;
         public GList m_list;
@@ -61,7 +60,6 @@ namespace UI.TimeTracing
 
         private void Init(GComponent comp)
         {
-            m_backBtn = (GLoader)comp.GetChild("backBtn");
             m_bg = (GLoader)comp.GetChild("bg");
             m_txtScore = (GTextField)comp.GetChild("txtScore");
             m_list = (GList)comp.GetChild("list");
@@ -71,7 +69,6 @@ namespace UI.TimeTracing
         }
         public void Dispose(bool disposeTarget = false)
         {
-            m_backBtn = null;
             m_bg = null;
             m_txtScore = null;
             m_list = null;

+ 3 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TimeTracing/UI_TimeTracingLevelUI.cs

@@ -24,6 +24,7 @@ namespace UI.TimeTracing
         public GGroup m_targetSuit;
         public GProgressBar m_proBar;
         public GTextField m_countNum;
+        public GLoader m_countDesc;
         public UI_proBarItem m_barItem0;
         public UI_proBarItem m_barItem1;
         public UI_proBarItem m_barItem2;
@@ -94,6 +95,7 @@ namespace UI.TimeTracing
             m_targetSuit = (GGroup)comp.GetChild("targetSuit");
             m_proBar = (GProgressBar)comp.GetChild("proBar");
             m_countNum = (GTextField)comp.GetChild("countNum");
+            m_countDesc = (GLoader)comp.GetChild("countDesc");
             m_barItem0 = (UI_proBarItem)UI_proBarItem.Create(comp.GetChild("barItem0"));
             m_barItem1 = (UI_proBarItem)UI_proBarItem.Create(comp.GetChild("barItem1"));
             m_barItem2 = (UI_proBarItem)UI_proBarItem.Create(comp.GetChild("barItem2"));
@@ -125,6 +127,7 @@ namespace UI.TimeTracing
             m_targetSuit = null;
             m_proBar = null;
             m_countNum = null;
+            m_countDesc = null;
             m_barItem0.Dispose();
             m_barItem0 = null;
             m_barItem1.Dispose();

+ 6 - 9
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TimeTracing/UI_TimeTracingShowUI.cs

@@ -7,15 +7,14 @@ namespace UI.TimeTracing
     public partial class UI_TimeTracingShowUI
     {
         public GComponent target;
-        public GLoader m_bg;
         public GGraph m_showSuit;
-        public GButton m_btnBack;
+        public GLoader m_bg;
         public UI_Component1 m_switchBtn;
-        public GLoader m_showSuitBtn;
         public GTextField m_suitName;
         public GLoader m_ruleBtn;
         public GButton m_challgeBtn;
         public UI_Button2 m_makeSuitBtn;
+        public GButton m_btnBack;
         public const string URL = "ui://gayfh946l8158";
         public const string PACKAGE_NAME = "TimeTracing";
         public const string RES_NAME = "TimeTracingShowUI";
@@ -63,29 +62,27 @@ namespace UI.TimeTracing
 
         private void Init(GComponent comp)
         {
-            m_bg = (GLoader)comp.GetChild("bg");
             m_showSuit = (GGraph)comp.GetChild("showSuit");
-            m_btnBack = (GButton)comp.GetChild("btnBack");
+            m_bg = (GLoader)comp.GetChild("bg");
             m_switchBtn = (UI_Component1)UI_Component1.Create(comp.GetChild("switchBtn"));
-            m_showSuitBtn = (GLoader)comp.GetChild("showSuitBtn");
             m_suitName = (GTextField)comp.GetChild("suitName");
             m_ruleBtn = (GLoader)comp.GetChild("ruleBtn");
             m_challgeBtn = (GButton)comp.GetChild("challgeBtn");
             m_makeSuitBtn = (UI_Button2)UI_Button2.Create(comp.GetChild("makeSuitBtn"));
+            m_btnBack = (GButton)comp.GetChild("btnBack");
         }
         public void Dispose(bool disposeTarget = false)
         {
-            m_bg = null;
             m_showSuit = null;
-            m_btnBack = null;
+            m_bg = null;
             m_switchBtn.Dispose();
             m_switchBtn = null;
-            m_showSuitBtn = null;
             m_suitName = null;
             m_ruleBtn = null;
             m_challgeBtn = null;
             m_makeSuitBtn.Dispose();
             m_makeSuitBtn = null;
+            m_btnBack = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 9 - 3
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/TimeTracing/UI_proBarItem.cs

@@ -9,8 +9,10 @@ namespace UI.TimeTracing
         public GComponent target;
         public Controller m_c1;
         public GImage m_Got;
-        public GImage m_GotIcon;
         public GImage m_canGet;
+        public GLoader m_icon;
+        public GImage m_GotIcon;
+        public GTextField m_count;
         public const string URL = "ui://gayfh946iwcl2u";
         public const string PACKAGE_NAME = "TimeTracing";
         public const string RES_NAME = "proBarItem";
@@ -60,15 +62,19 @@ namespace UI.TimeTracing
         {
             m_c1 = comp.GetController("c1");
             m_Got = (GImage)comp.GetChild("Got");
-            m_GotIcon = (GImage)comp.GetChild("GotIcon");
             m_canGet = (GImage)comp.GetChild("canGet");
+            m_icon = (GLoader)comp.GetChild("icon");
+            m_GotIcon = (GImage)comp.GetChild("GotIcon");
+            m_count = (GTextField)comp.GetChild("count");
         }
         public void Dispose(bool disposeTarget = false)
         {
             m_c1 = null;
             m_Got = null;
-            m_GotIcon = null;
             m_canGet = null;
+            m_icon = null;
+            m_GotIcon = null;
+            m_count = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 1 - 1
GameClient/Assets/Game/HotUpdate/GameConfig.cs

@@ -32,7 +32,7 @@ namespace GFGGame
             var result = JsonMapper.ToObject<Result>(json);
             LoginAddress = result.loginApiUrl;
             // LoginAddress = "http://login.gfg.com:10005";
-            //LoginAddress = "10.108.64.127:10005";//测试地址
+            //LoginAddress = "192.168.2.12:10005";//测试地址
             showGM = int.Parse(result.showGM);
             if(!string.IsNullOrEmpty(result.openTime))
             {

+ 5 - 0
GameClient/Assets/Game/HotUpdate/GameGlobal.cs

@@ -39,6 +39,11 @@ namespace GFGGame
         public static bool AutoSpecialOfferGiftBoxView = true;
         public static bool AutoAcitivtyTipsLoginView = true;
         public static bool AutoMonthlyCardView = true;
+        public static bool AutoNewPlayersTips = true;
+        public static bool NewPlayerOnceTips = true;
+        public static bool AutoZGTHDCTips = true;
+        public static bool AutoZGTHTips = true;
+        public static bool AutoPearRebateTips = true;
         //用于标记自动检测打开界面流程已执行完毕
         public static bool AutoShowCompleted;
 

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

@@ -316,6 +316,75 @@ namespace GFGGame
             }
             return false;
         }
+
+        //**************************新人礼包领取
+        public static async ETTask<bool> ReqGetNewPlayerBonus()
+        {
+            S2C_GetNewcomerRewards response = null;
+            response = (S2C_GetNewcomerRewards)await MessageHelper.SendToServer(new C2S_GetNewcomerRewards() { });
+            if (response != null)
+            {
+                if (response.Error == ErrorCode.ERR_Success)
+                {
+                    ActivityDataManager.Instance.IsGetNewPlayerReward = response.Status;
+                    BonusController.TryShowBonusList(ItemUtil.CreateItemDataList(response.BonusList));
+                    return true;
+                }
+            }
+            return false;
+        }
+        //获取新人礼包状态
+        public static async ETTask<bool> ReqGetNewPlayerBonusStatus()
+        {
+            S2C_GetNewcomerRewardStatus response = null;
+            response = (S2C_GetNewcomerRewardStatus)await MessageHelper.SendToServer(new C2S_GetNewcomerRewardStatus() { });
+            if (response != null)
+            {
+                if (response.Error == ErrorCode.ERR_Success)
+                {
+                    ActivityDataManager.Instance.IsGetNewPlayerReward = response.Status;
+                    GameGlobal.AutoNewPlayersTips = response.OpenStatus;
+                    return true;
+                }
+            }
+            return false;
+        }
+        public static async ETTask SetNewPlayerOnceStatus(long id)
+        {
+            S2C_UpdateDataRecord response = (S2C_UpdateDataRecord)await MessageHelper.SendToServer(new C2S_UpdateDataRecord (){ K = 100001, V = id });
+        }
+        public static async ETTask<bool> GetNewPlayerOnceStatus()
+        {
+            S2C_GetDataRecord response = (S2C_GetDataRecord)await MessageHelper.SendToServer(new C2S_GetDataRecord() { });
+            for (int i = 0; i < response.AllKs.Count; i++)
+            {
+                if (response.AllKs[i] == 100001)
+                {
+                    if(response.AllVs[i] == 0)
+                    {
+                        GameGlobal.NewPlayerOnceTips = false;
+                        return true;
+                    }
+                    else
+                    {
+                        GameGlobal.NewPlayerOnceTips = true;
+                        return true;
+                    }
+                }
+            }
+            GameGlobal.NewPlayerOnceTips = true;
+            return true;
+        }
+    }
+    //新人活动开启状态推送
+    public class NewPlayerOpenStatus : AMHandler<S2C_PushNewcomerRewardStatus>
+    {
+        protected override async ETTask Run(Session session, S2C_PushNewcomerRewardStatus message)
+        {
+            GameGlobal.AutoNewPlayersTips = message.OpenStatus;
+            await ETTask.CompletedTask;
+        }
+
     }
 }
 

+ 2 - 1
GameClient/Assets/Game/HotUpdate/ServerProxy/ArenaSproxy.cs

@@ -244,7 +244,8 @@ namespace GFGGame
                         }
                     }
                     EventAgent.DispatchEvent(ConstMessage.ARENA_FIGHT_RESULT);
-                    PromptController.Instance.ShowFloatTextPrompt("对方排名已发生变化");
+                    //PromptController.Instance.ShowFloatTextPrompt("对方排名已发生变化");
+                    ErrorCodeController.Handler(response.Error);
                     return false;
                 }
                 else

+ 43 - 0
GameClient/Assets/Game/HotUpdate/ServerProxy/MainStorySProxy.cs

@@ -53,5 +53,48 @@ namespace GFGGame
             return false;
         }
 
+        //请求章节奖励数据
+        public static async ETTask<bool> GetStoryBonusDate()
+        {
+            S2C_GetChapterPassStatus response = null;
+            response = (S2C_GetChapterPassStatus)await MessageHelper.SendToServer(new C2S_GetChapterPassStatus() {  });
+            if (response != null)
+            {
+                if (response.Error == ErrorCode.ERR_Success)
+                {
+                    MainStoryDataManager.ChapterRewardStatusDic.Clear();
+                    for(int i = 0;i < response.PassStatusKs.Count;i++)
+                    {
+                        MainStoryDataManager.ChapterRewardStatusDic.Add(response.PassStatusKs[i], response.PassStatusVs[i]);
+                    }    
+                    return true;
+                }
+            }
+            return false;
+        }
+
+        //领取章节奖励数据
+        public static async ETTask<bool> GetStoryBonusReward(int id)
+        {
+            S2C_GethapterPassReward response = null;
+            response = (S2C_GethapterPassReward)await MessageHelper.SendToServer(new C2S_GethapterPassReward() { ChapterId = id});
+            if (response != null)
+            {
+                if (response.Error == ErrorCode.ERR_Success)
+                {
+                    for (int i = 0; i < response.PassStatusKs.Count; i++)
+                    {
+                        if(response.PassStatusKs[i] == id)
+                        {
+                            MainStoryDataManager.ChapterRewardStatusDic[id] = response.PassStatusVs[i];
+                        }  
+                    }
+                    BonusController.TryShowBonusList(ItemUtil.CreateItemDataList(response.BonusList));
+                    return true;
+                }
+            }
+            return false;
+        }
+
     }
 }

+ 2 - 3
GameClient/Assets/Game/HotUpdate/ServerProxy/TimeTracingSProxy.cs

@@ -89,7 +89,6 @@ namespace GFGGame
                     rewardData.Add(response.RewardKs[j], response.RewardVs[j]);
                 }
             TimeTracingDataManager.LevelRewardDic[levelId] = rewardData;
-            EventAgent.DispatchEvent(ConstMessage.TIMETRACINGREDUPDATE);
             // 奖励弹窗
             BonusController.TryShowBonusList(ItemUtil.CreateItemDataList(response.BonusList));
             return true;
@@ -152,14 +151,14 @@ namespace GFGGame
         public static async ETTask<bool> ReqSetDataRecord(long SuitID)
         {
             TimeTracingDataManager.Instance.LevelRankDatasDic[1].Clear();
-            S2C_UpdateDataRecord response = (S2C_UpdateDataRecord)await MessageHelper.SendToServer(new C2S_UpdateDataRecord { K = 6200123,V = SuitID });
+            S2C_UpdateDataRecord response = (S2C_UpdateDataRecord)await MessageHelper.SendToServer(new C2S_UpdateDataRecord() { K = 6200123,V = SuitID });
             return true;
         }
 
         public static async ETTask<bool> ReqGetDataRecord()
         {
             TimeTracingDataManager.Instance.LevelRankDatasDic[1].Clear();
-            S2C_GetDataRecord response = (S2C_GetDataRecord)await MessageHelper.SendToServer(new C2S_GetDataRecord { });
+            S2C_GetDataRecord response = (S2C_GetDataRecord)await MessageHelper.SendToServer(new C2S_GetDataRecord() { });
             for(int i = 0; i<response.AllKs.Count;i++)
             {
                 if(response.AllKs[i] == 6200123)

+ 1 - 0
GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/ActivityZCJBView.cs

@@ -45,6 +45,7 @@ namespace GFGGame
         {
             base.OnShown();
             ReqInfo();
+            _ui.m_time.visible = false;
             RedDotController.Instance.SetComRedDot(_ui.m_rewardBTn, ActivityDataManager.Instance.CheckZCJBRed(),"",-30);
             EventAgent.AddEventListener(ConstMessage.RED_CHANGE, SetRed);
         }

+ 75 - 0
GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/NewPlayerTipsView.cs

@@ -0,0 +1,75 @@
+using FairyGUI;
+using UI.ActivityMain;
+using System.Collections;
+using System.Collections.Generic;
+using ET;
+
+namespace GFGGame
+{
+    public class NewPlayersTipsView : BaseWindow
+    {
+        private UI_NewPlayersTipsUI _ui;
+        private EffectUI _effectUI1;
+        private EffectUI _effectUI2;
+        public override void Dispose()
+        {
+            EffectUIPool.Recycle(_effectUI1);
+            _effectUI1 = null;
+            EffectUIPool.Recycle(_effectUI2);
+            _effectUI2 = null;
+            if (_ui != null)
+            {
+                _ui.Dispose();
+                _ui = null;
+            }
+            base.Dispose();
+        }
+        protected override void OnInit()
+        {
+            base.OnInit();
+            packageName = UI_NewPlayersTipsUI.PACKAGE_NAME;
+            _ui = UI_NewPlayersTipsUI.Create();
+            this.viewCom = _ui.target;
+            isfullScreen = true;
+            modal = true;
+            _ui.m_GetRewardBtn.onClick.Add(OnClickGetReward);
+            _ui.m_backBtn.onClick.Add(OnClickChange);
+            _ui.m_btnBack.onClick.Add(OnClickChange);
+
+            _effectUI1 = EffectUIPool.CreateEffectUI(_ui.m_effectBtn, "ui_Activity", "JLQQ_button");
+            _effectUI2 = EffectUIPool.CreateEffectUI(_ui.m_effectBG, "ui_Activity", "JLQQ_tx_loop");
+        }
+        protected override void OnShown()
+        {
+            base.OnShown();
+
+            UpdateInfo();
+        }
+        protected override void OnHide()
+        {
+            base.OnHide();
+        }
+        private void UpdateView()
+        {
+
+        }
+
+        private async void UpdateInfo()
+        {
+           await ActivitySProxy.SetNewPlayerOnceStatus(0);
+        }
+        private async void OnClickGetReward()
+        {
+            bool result;
+            GameGlobal.NewPlayerOnceTips = false;
+            result = await ActivitySProxy.ReqGetNewPlayerBonus();
+            this.Hide();
+        }
+        private void OnClickChange()
+        {
+            GameGlobal.NewPlayerOnceTips = false;
+            this.Hide();
+        }
+
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/NewPlayerTipsView.cs.meta

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

+ 199 - 0
GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/PearlRebateTipsView.cs

@@ -0,0 +1,199 @@
+using FairyGUI;
+using UI.ActivityMain;
+using UI.CommonGame;
+using System.Collections;
+using System.Collections.Generic;
+using ET;
+using static GFGGame.ShopSProxy;
+
+namespace GFGGame
+{
+    public class PearRebateTipsView : BaseWindow
+    {
+        private UI_PearlRebateTipsUI _ui;
+        private EffectUI _effectUI1;
+        private EffectUI _effectUI2;
+        private int indexNum = 0;
+        public override void Dispose()
+        {
+            EffectUIPool.Recycle(_effectUI1);
+            _effectUI1 = null;
+            EffectUIPool.Recycle(_effectUI2);
+            _effectUI2 = null;
+            if (_ui != null)
+            {
+                _ui.Dispose();
+                _ui = null;
+            }
+            base.Dispose();
+        }
+        protected override void OnInit()
+        {
+            base.OnInit();
+            packageName = UI_PearlRebateTipsUI.PACKAGE_NAME;
+            _ui = UI_PearlRebateTipsUI.Create();
+            this.viewCom = _ui.target;
+            this.modal = true;
+            this.viewCom.Center();
+            viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
+            _ui.m_buyBtn.target.onClick.Add(OnClickGetReward);
+            _ui.m_backBtn.onClick.Add(OnClickChange);
+            _ui.m_one.target.onClick.Add(UpdateIndex1);
+            _ui.m_two.target.onClick.Add(UpdateIndex2);
+            _ui.m_three.target.onClick.Add(UpdateIndex3);
+
+            _effectUI1 = EffectUIPool.CreateEffectUI(_ui.m_effectBtn, "ui_Activity", "");
+            _effectUI2 = EffectUIPool.CreateEffectUI(_ui.m_effectBG, "ui_Activity", "");
+
+           
+        }
+        protected override void AddEventListener()
+        {
+            base.AddEventListener();
+            EventAgent.AddEventListener(ConstMessage.SHOP_BUY, UpdateView);
+        }
+
+        protected override void RemoveEventListener()
+        {
+            base.RemoveEventListener();
+            EventAgent.RemoveEventListener(ConstMessage.SHOP_BUY, UpdateView);
+        }
+        protected override void OnShown()
+        {
+            base.OnShown();
+            UpdateIndex1();
+            Timers.inst.Add(1, 0, UpdateTime);
+        }
+        protected override void OnHide()
+        {
+            Timers.inst.Remove(UpdateTime);
+            base.OnHide();
+        }
+        private void UpdateListItem(int giftId)
+        { 
+            ItemCfg item = ItemCfgArray.Instance.GetCfg(giftId);
+            int index = item.itemsArr.Length;
+            _ui.m_c1.selectedIndex = index;
+            switch (index)
+            {
+                case 1:
+                    int id = item.itemsArr[0][0];
+                    int count = item.itemsArr[0][1];
+                    ItemData itemDate = ItemUtil.createItemData(id, count);
+                    ItemView itemView = new ItemView(_ui.m_item1);
+                    itemView.SetData(itemDate);
+                    break;
+                case 2:
+                    int id0 = item.itemsArr[0][0];
+                    int count0 = item.itemsArr[0][1];
+                    ItemData itemDate0 = ItemUtil.createItemData(id0, count0);
+                    ItemView itemView0 = new ItemView(_ui.m_item0);
+                    itemView0.SetData(itemDate0);
+                    id0 = item.itemsArr[1][0];
+                    count0 = item.itemsArr[1][1];
+                    itemDate0 = ItemUtil.createItemData(id0, count0);
+                    itemView0 = new ItemView(_ui.m_item1);
+                    itemView0.SetData(itemDate0);
+                    break;
+                case 3:
+                    for(int i = 0;i< item.itemsArr.Length;i++)
+                    {
+                        int id3 = item.itemsArr[i][0];
+                        int count3 = item.itemsArr[i][1];
+                        ItemData itemDate3 = ItemUtil.createItemData(id3, count3);
+                        ItemView itemView3 = new ItemView(_ui.target.GetChild(string.Format("item{0}",i)) as GComponent);
+                        itemView3.SetData(itemDate3);
+                    }
+                    break;
+                default:
+                    break;
+            }
+        }
+
+        private void UpdateView()
+        {
+            int discount;
+            ActivityOpenCfg activityCfg = ActivityOpenCfgArray.Instance.GetCfg(6000);
+            ShopCfg shopCfg = ShopCfgArray.Instance.GetCfg(activityCfg.paramsArr[indexNum]);
+            ItemCfg item = ItemCfgArray.Instance.GetCfg(shopCfg.itemId);
+            if (shopCfg.Price == 0) discount =  0;
+            discount =  (int)(((double)shopCfg.originalPrice / (double)shopCfg.configPrice) * 100);
+            int buyNum = ShopDataManager.Instance.GetGoodsBuyNumById(shopCfg.id);
+            if (shopCfg.maxBuyNum == 0 || buyNum < shopCfg.maxBuyNum)
+            {
+                _ui.m_buyBtn.target.visible = true ;
+                _ui.m_gotbtn.target.visible = false;
+                _ui.m_buyBtn.m_Number.text = string.Format("{0}元", shopCfg.configPrice.ToString());
+            }
+            else
+            {
+                _ui.m_buyBtn.target.visible = false;
+                _ui.m_gotbtn.target.visible = true;
+            }
+                
+            UpdateListItem(item.id);
+        }
+        private void UpdateIndex1()
+        {
+            indexNum = 0;
+            _ui.m_one.m_c1.selectedIndex = 1;
+            _ui.m_two.m_c1.selectedIndex = 0;
+            _ui.m_three.m_c1.selectedIndex = 0;
+            UpdateView();
+        }
+        private void UpdateIndex2()
+        {
+            indexNum = 1;
+            _ui.m_one.m_c1.selectedIndex = 0;
+            _ui.m_two.m_c1.selectedIndex = 1;
+            _ui.m_three.m_c1.selectedIndex = 0;
+            UpdateView();
+        }
+        private void UpdateIndex3()
+        {
+            indexNum = 2;
+            _ui.m_one.m_c1.selectedIndex = 0;
+            _ui.m_two.m_c1.selectedIndex = 0;
+            _ui.m_three.m_c1.selectedIndex = 1;
+            UpdateView();
+        }
+
+        private void OnClickGetReward()
+        {
+                var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(6000);
+                if (activityInfo != null)
+                {
+                    var cfg = ActivityOpenCfgArray.Instance.GetCfg(6000);
+                    if (cfg.paramsArr != null && cfg.paramsArr.Length > 0)
+                    {
+                        int id = cfg.paramsArr[indexNum];
+                        
+                        ReqShopBuy(id).Coroutine();
+                    }
+                }
+                return;
+        }
+        private void OnClickChange()
+        {
+            this.Hide();
+        }
+        private void UpdateTime(object param)
+        {
+            var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(6000);
+            long endTime = 0;
+            if( activityInfo!= null)
+            {
+                endTime = activityInfo.EndTime;
+            } 
+            var leftTime = endTime - TimeHelper.ServerNow();
+            if (leftTime <= 0)
+            {
+                _ui.m_timeText.text = "";
+                _ui.m_buyBtn.target.visible = false;
+                Timers.inst.Remove(UpdateTime);
+                return;
+            }
+            _ui.m_timeText.text = TimeUtil.FormattingTimeTo_DDHHmm((int)leftTime);
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/PearlRebateTipsView.cs.meta

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

+ 65 - 0
GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/SevenDailyTipsView.cs

@@ -0,0 +1,65 @@
+using FairyGUI;
+using UI.ActivityMain;
+using System.Collections;
+using System.Collections.Generic;
+using ET;
+
+namespace GFGGame
+{
+    public class SevenDailyTipsView : BaseWindow
+    {
+        private UI_SevenDailyTipsUI _ui;
+
+        public override void Dispose()
+        {
+
+            if (_ui != null)
+            {
+                _ui.Dispose();
+                _ui = null;
+            }
+            base.Dispose();
+        }
+        protected override void OnInit()
+        {
+            base.OnInit();
+            packageName = UI_SevenDailyTipsUI.PACKAGE_NAME;
+            _ui = UI_SevenDailyTipsUI.Create();
+            this.viewCom = _ui.target;
+            isfullScreen = true;
+            modal = true;
+            _ui.m_icon.onClick.Add(OnClickGetReward);
+            _ui.m_backBtn.onClick.Add(OnClickChange);
+            _ui.m_btnBack.onClick.Add(OnClickChange);
+        }
+        protected override void OnShown()
+        {
+            base.OnShown();
+
+            UpdateInfo();
+        }
+        protected override void OnHide()
+        {
+            base.OnHide();
+        }
+        private void UpdateView()
+        {
+
+        }
+
+        private void UpdateInfo()
+        {
+            GameGlobal.AutoSevenDayLoginView = false;
+        }
+        private void OnClickGetReward()
+        {
+            ViewManager.Show<SevenDayLoginView>();
+            this.Hide();
+        }
+        private void OnClickChange()
+        {
+            this.Hide();
+        }
+
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/SevenDailyTipsView.cs.meta

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

+ 173 - 0
GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/ZGTHgiftDCTipsView.cs

@@ -0,0 +1,173 @@
+using ET;
+using FairyGUI;
+using UI.ActivityMain;
+using UI.CommonGame;
+using System;
+using System.Collections.Generic;
+using static GFGGame.ShopSProxy;
+
+namespace GFGGame
+{
+    public class ZGTHgiftDCTipsView : BaseWindow
+    {
+        //直购典藏弹窗
+        private UI_ZGTHgiftDCTipsUI _ui;
+        private List<EverydaySaleCfg> zgthdcListCfg = new List<EverydaySaleCfg>();
+        private int indexSuit = 0;
+        private int giftItemId = 0;
+        private int giftShopId = 0;
+
+        public override void Dispose()
+        {
+
+            if (_ui != null)
+            {
+                _ui.Dispose();
+                _ui = null;
+            }
+            base.Dispose();
+        }
+
+        protected override void OnInit()
+        {
+            base.OnInit();
+            packageName = UI_ZGTHgiftDCTipsUI.PACKAGE_NAME;
+            _ui = UI_ZGTHgiftDCTipsUI.Create();
+            this.viewCom = _ui.target;
+            this.modal = true;
+            this.viewCom.Center();
+
+            viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
+
+            _ui.m_Itemlist.itemRenderer = ListItemRender;
+            _ui.m_btnCharge.onClick.Add(OnBtnGetClick);
+            _ui.m_btnClose.onClick.Add(this.Hide);
+        }
+
+        protected override void AddEventListener()
+        {
+            base.AddEventListener();
+            EventAgent.AddEventListener(ConstMessage.NUMERIC_CHANGE, OnNumericChange);
+        }
+
+        protected override void RemoveEventListener()
+        {
+            base.RemoveEventListener();
+            EventAgent.RemoveEventListener(ConstMessage.NUMERIC_CHANGE, OnNumericChange);
+        }
+
+        protected override void OnShown()
+        {
+            base.OnShown();
+            zgthdcListCfg = EverydaySaleCfgArray.Instance.GetCfgsByactivityId(6001);
+            indexSuit = ReturnDiscountTimeSuitIndex();
+            UpdateView();
+
+            var activityInfo = zgthdcListCfg[indexSuit];
+            long endTime = 0;
+            if (activityInfo != null)
+            {
+                endTime = TimeUtil.DateTimeToTimestamp(activityInfo.endTime);
+            }
+            var leftTime = endTime - TimeHelper.ServerNow();
+            _ui.m_timeText.text = TimeUtil.FormattingTimeTo_DDHHmm((int)leftTime);
+
+            Timers.inst.Add(1, 0, UpdateTime);
+        }
+        protected override void OnHide()
+        {
+            Timers.inst.Remove(UpdateTime);
+            base.OnHide();
+        }
+        private async void OnBtnGetClick()
+        {
+            //修改直购逻辑,根据时间判断传入不用的直购id,是折扣还是现价
+            await ReqShopBuy(giftShopId);
+            _ui.m_btnCharge.visible = false;
+        }
+
+        private void OnNumericChange(EventContext context)
+        {
+        }
+
+        private void UpdateView()
+        {
+            //修改suitList,giftbagList,还需要根据时间判断折扣
+            var suitCfg = SuitCfgArray.Instance.GetCfg(zgthdcListCfg[indexSuit].SuitShow);
+            ShopCfg shopCfg = ShopCfgArray.Instance.GetCfg(ActivityOpenCfgArray.Instance.GetCfg(6001).paramsArr[indexSuit]);
+            giftItemId = shopCfg.itemId;
+            giftShopId = shopCfg.id;
+            ItemCfg item = ItemCfgArray.Instance.GetCfg(giftItemId);
+            int discount = (int)(((double)shopCfg.originalPrice / (double)shopCfg.configPrice) * 100);
+            _ui.m_suitIcon.url = string.Format("ui://ActivityMain/{0}", suitCfg.res);
+            _ui.m_Itemlist.numItems = item.itemsArr.Length;
+            _ui.m_txtName.text = suitCfg.name;
+            _ui.m_btnCharge.GetChild("title").text = string.Format("{0}元/购买", shopCfg.configPrice.ToString());
+            _ui.m_discountText.text = discount.ToString();
+            int buyNum = ShopDataManager.Instance.GetGoodsBuyNumById(shopCfg.id);
+            if (shopCfg.maxBuyNum == 0 || buyNum < shopCfg.maxBuyNum)
+            {
+                _ui.m_btnCharge.visible = true;
+            }
+            else
+            {
+                _ui.m_btnCharge.visible = false;
+            }
+            //判断这个直购id是否购买是否显示按钮
+            if (false)
+            {
+                _ui.m_btnCharge.visible = false;
+            }
+        }
+
+        private void ListItemRender(int index, GObject obj)
+        {
+            UI_ZGTHRewardItem item = UI_ZGTHRewardItem.Proxy(obj);
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(giftItemId);
+            int id = itemCfg.itemsArr[index][0];
+            int count = itemCfg.itemsArr[index][1];
+            ItemData itemDate = ItemUtil.createItemData(id, count);
+            ItemView itemView = new ItemView(item.m_item);
+            itemView.SetData(itemDate);
+            item.m_name.text = ItemCfgArray.Instance.GetCfg(itemCfg.itemsArr[index][0]).name;
+            UI_ZGTHRewardItem.ProxyEnd();
+        }
+
+        private int ReturnDiscountTimeSuitIndex()
+        {
+            int count = 0;
+            long endTime;
+            long startTime;
+            foreach (var item in zgthdcListCfg)
+            {
+                endTime = TimeUtil.DateTimeToTimestamp(item.endTime);
+                startTime = TimeUtil.DateTimeToTimestamp(item.openTime);
+                if (startTime <= TimeHelper.ServerNow() && endTime > TimeHelper.ServerNow())
+                {
+                    indexSuit = count;
+                    return indexSuit;
+                }
+                count++;
+            }
+            return indexSuit;
+        }
+        private void UpdateTime(object param)
+        {
+            var activityInfo = zgthdcListCfg[indexSuit];
+            long endTime = 0;
+            if (activityInfo != null)
+            {
+                endTime = TimeUtil.DateTimeToTimestamp(activityInfo.endTime);
+            }
+            var leftTime = endTime - TimeHelper.ServerNow();
+            if (leftTime <= 0)
+            {
+                _ui.m_timeText.text = "";
+                _ui.m_btnCharge.visible = false;
+                Timers.inst.Remove(UpdateTime);
+                return;
+            }
+            _ui.m_timeText.text = TimeUtil.FormattingTimeTo_DDHHmm((int)leftTime);
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/ZGTHgiftDCTipsView.cs.meta

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

+ 138 - 0
GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/ZGTHgiftTipsView.cs

@@ -0,0 +1,138 @@
+using ET;
+using FairyGUI;
+using UI.ActivityMain;
+using UI.CommonGame;
+using static GFGGame.ShopSProxy;
+
+namespace GFGGame
+{
+    public class ZGTHgiftTipsView : BaseWindow
+    {
+        //直购648
+        private UI_ZGTHgiftTipsUI _ui;
+        private int giftItemId = 0;
+        private ItemCfg itemcfg;
+        private int shopId = 0;
+        public override void Dispose()
+        {
+
+            if (_ui != null)
+            {
+                _ui.Dispose();
+                _ui = null;
+            }
+            base.Dispose();
+        }
+
+        protected override void OnInit()
+        {
+            base.OnInit();
+            packageName = UI_ZGTHgiftTipsUI.PACKAGE_NAME;
+            _ui = UI_ZGTHgiftTipsUI.Create();
+            this.viewCom = _ui.target;
+            this.modal = true;
+            this.viewCom.Center();
+
+            viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
+
+            _ui.m_Itemlist.itemRenderer = ListItemRender;
+
+            _ui.m_btnBuy.onClick.Add(OnBtnGetClick);
+            _ui.m_btnClose.onClick.Add(this.Hide);
+        }
+
+        protected override void AddEventListener()
+        {
+            base.AddEventListener();
+
+        }
+
+        protected override void RemoveEventListener()
+        {
+            base.RemoveEventListener();
+        }
+
+        protected override void OnShown()
+        {
+            base.OnShown();
+            
+            ShopCfg shopCfg = ShopCfgArray.Instance.GetCfg(ActivityOpenCfgArray.Instance.GetCfg(6002).paramsArr[0]);
+            giftItemId = shopCfg.itemId;
+            shopId = shopCfg.id;
+            itemcfg = ItemCfgArray.Instance.GetCfg(giftItemId);
+            _ui.m_Itemlist.numItems = itemcfg.itemsArr.Length;  
+            int buyNum = ShopDataManager.Instance.GetGoodsBuyNumById(shopCfg.id);
+            if (shopCfg.maxBuyNum == 0 || buyNum < shopCfg.maxBuyNum)
+            {
+                _ui.m_btnBuy.visible = true;
+            }
+            else
+            {
+                _ui.m_btnBuy.visible = false;
+            }
+            _ui.m_btnBuy.GetChild("title").text = string.Format("{0}元/购买", shopCfg.configPrice.ToString());
+
+            var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(6002);
+            long endTime = 0;
+            if (activityInfo != null)
+            {
+                endTime = activityInfo.EndTime;
+            }
+            var leftTime = endTime - TimeHelper.ServerNow();
+            if (leftTime <= 0)
+            {
+                _ui.m_timeText.text = "";
+                _ui.m_btnBuy.visible = false;
+                Timers.inst.Remove(UpdateTime);
+                return;
+            }
+            _ui.m_timeText.text = TimeUtil.FormattingTimeTo_DDHHmm((int)leftTime);
+
+            Timers.inst.Add(1, 0, UpdateTime);
+        }
+        protected override void OnHide()
+        {
+            Timers.inst.Remove(UpdateTime);
+            base.OnHide();
+        }
+        private void OnBtnGetClick()
+        {
+            _ui.m_btnBuy.visible = false;
+            ReqShopBuy(shopId).Coroutine();
+        }
+        private void UpdateBtn()
+        {
+            _ui.m_btnBuy.visible = false;
+        }
+
+        private void ListItemRender(int index, GObject obj)
+        {
+            UI_ZGTHRewardItem item = UI_ZGTHRewardItem.Proxy(obj);
+            int id = itemcfg.itemsArr[index][0];
+            int count = itemcfg.itemsArr[index][1];
+            ItemData itemDate = ItemUtil.createItemData(id, count);
+            ItemView itemView = new ItemView(item.m_item);
+            itemView.SetData(itemDate);
+            item.m_name.text = ItemCfgArray.Instance.GetCfg(itemcfg.itemsArr[index][0]).name;
+            UI_ZGTHRewardItem.ProxyEnd();
+        }
+        private void UpdateTime(object param)
+        {
+            var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(6002);
+            long endTime = 0;
+            if (activityInfo != null)
+            {
+                endTime = activityInfo.EndTime;
+            }
+            var leftTime = endTime - TimeHelper.ServerNow();
+            if (leftTime <= 0)
+            {
+                _ui.m_timeText.text = "";
+                _ui.m_btnBuy.visible = false;
+                Timers.inst.Remove(UpdateTime);
+                return;
+            }
+            _ui.m_timeText.text = TimeUtil.FormattingTimeTo_DDHHmm((int)leftTime);
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/ZGTHgiftTipsView.cs.meta

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

+ 18 - 7
GameClient/Assets/Game/HotUpdate/Views/Bag/BagView.cs

@@ -32,6 +32,7 @@ namespace GFGGame
                 _ui.Dispose();
                 _ui = null;
             }
+
             base.Dispose();
         }
 
@@ -107,10 +108,10 @@ namespace GFGGame
             item.m_txtName.text = itemCfg.name;
             //是礼包就加入红点
             if (((itemCfg.itemType == ConstItemType.USEABLE &&
-                 itemCfg.subType == ConstItemSubType.USEABLE_GIFT_BAG_SELECTABLE) ||
-                (itemCfg.itemType == ConstItemType.USEABLE &&
-                 itemCfg.subType == ConstItemSubType.USEABLE_GIFT_BAG_RANDOM))
-                 && itemData.id != 6003001 && itemData.id != 6003002)
+                  itemCfg.subType == ConstItemSubType.USEABLE_GIFT_BAG_SELECTABLE) ||
+                 (itemCfg.itemType == ConstItemType.USEABLE &&
+                  itemCfg.subType == ConstItemSubType.USEABLE_GIFT_BAG_RANDOM))
+                && itemData.id != 6003001 && itemData.id != 6003002)
             {
                 RedDotController.Instance.SetComRedDot(item.target, true);
             }
@@ -118,6 +119,7 @@ namespace GFGGame
             {
                 RedDotController.Instance.SetComRedDot(item.target, false);
             }
+
             UI_ComItem.ProxyEnd();
         }
 
@@ -141,9 +143,18 @@ namespace GFGGame
             }
             else
             {
-                object[] sourceDatas = new object[]
-                    { itemCfg.id, new object[] { typeof(BagView).FullName, this.viewData } };
-                GoodsItemTipsController.ShowItemTips(itemCfg.id, sourceDatas);
+                var bagExchangeCfg = BagExchangeCfgArray.Instance.GetCfg(itemCfg.id);
+                if (bagExchangeCfg != null)
+                {
+					//从背包使用物品
+                    ViewManager.Show<BagExchangeView>(itemCfg.id);
+                }
+                else
+                {
+                    object[] sourceDatas = new object[]
+                        { itemCfg.id, new object[] { typeof(BagView).FullName, this.viewData } };
+                    GoodsItemTipsController.ShowItemTips(itemCfg.id, sourceDatas);
+                }
             }
         }
 

+ 350 - 0
GameClient/Assets/Game/HotUpdate/Views/Card/CardSyntheticView.cs

@@ -0,0 +1,350 @@
+using UnityEngine;
+using UI.ClothingSynthetic;
+using UI.CardSynthetic;
+using FairyGUI;
+using System.Collections.Generic;
+using System;
+using ET;
+using System.Collections;
+using System.Threading.Tasks;
+using YooAsset;
+
+namespace GFGGame
+{
+    public class CardSyntheticView : BaseWindow
+    {
+        private UI_CardSyntheticUI _ui;
+        private DressUpObjUI _dressUpObjUI;
+        private ValueBarController _valueBarController;
+        private GImage _imgSelected;
+        private int _cardId;
+        private int _chapterID;
+        private int _itemId;
+        private int[] _items;
+        private int _selectedItemId;
+        private GComponent _selectedListItem;
+        private List<ItemData> _materiarsOfSelectedItem;
+
+        private UI_MateriasListItem listTypeItem_CloSynthetic;
+        private UI_Component2 _compMover;
+
+
+        public override void Dispose()
+        {
+            if (_valueBarController != null)
+            {
+                _valueBarController.Dispose();
+                _valueBarController = null;
+            }
+
+            if (_imgSelected != null)
+            {
+                _imgSelected.RemoveFromParent();
+                _imgSelected.Dispose();
+            }
+            if (_dressUpObjUI != null)
+            {
+                _dressUpObjUI.Dispose();
+                _dressUpObjUI = null;
+            }
+
+            if (_ui != null)
+            {
+                _ui.Dispose();
+                _ui = null;
+            }
+            base.Dispose();
+        }
+
+
+        protected override void OnInit()
+        {
+            base.OnInit();
+            packageName = UI_CardSyntheticUI.PACKAGE_NAME;
+            _ui = UI_CardSyntheticUI.Create();
+            this.viewCom = _ui.target;
+            isfullScreen = true;
+            //layer = ConstViewLayer.TOP;
+            isReturnView = true;
+
+            _valueBarController = new ValueBarController(_ui.m_valueBar);
+
+            _dressUpObjUI = new DressUpObjUI("SceneDressUpSynthetic");
+
+            _ui.m_listMaterias.itemRenderer = RenderListMateriasItem;
+            _ui.m_listMaterias.onClickItem.Add(OnClickMateriasItemPlus);
+
+            _ui.m_btnBack.onClick.Add(OnClickBtnBack);
+            _ui.m_btnProduction.onClick.Add(OnClickBtnProcuction);
+            _ui.m_btnHome.onClick.Add(OnClickBtnHome);
+            _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("hc_bj_1");
+
+        }
+        protected override void AddEventListener()
+        {
+            base.AddEventListener();
+            EventAgent.AddEventListener(ConstMessage.ITEM_CHANGED, OnItemNumChanged);
+        }
+        protected override void OnShown()
+        {
+            base.OnShown();
+            _cardId = 0;
+            _selectedItemId = 0;
+            _chapterID = 0;
+            if (this.viewData != null)
+            {
+                _cardId = (int)(this.viewData as object[])[0];
+                _selectedItemId = (this.viewData as object[]).Length > 1 ? (int)(this.viewData as object[])[1] : 0;
+                if ((this.viewData as object[]).Length > 2)
+                    _chapterID = (int)(this.viewData as object[])[2];
+            }
+
+            if (DressUpMenuSuitDataManager.chooseClothing > 0)
+                _selectedItemId = DressUpMenuSuitDataManager.chooseClothing;
+
+            _valueBarController.OnShown();
+            _ui.m_loaBg2.url = ResPathUtil.GetBgImgPath("hc_bj_1");
+
+            UpdateView();
+
+            Timers.inst.AddUpdate(CheckGuide);
+        }
+
+        protected override void OnHide()
+        {
+            base.OnHide();
+            _valueBarController.OnHide();
+            _ui.m_listMaterias.selectedIndex = 0;
+            Timers.inst.Remove(CheckGuide);
+            _dressUpObjUI.dressUpObj.TakeOffAll();
+            if (_chapterID > 0)
+                MainStoryDataManager.currentChapterCfgId = _chapterID;
+        }
+        protected override void RemoveEventListener()
+        {
+            base.RemoveEventListener();
+            EventAgent.RemoveEventListener(ConstMessage.ITEM_CHANGED, OnItemNumChanged);
+        }
+        private void OnClickBtnBack()
+        {
+            DressUpMenuSuitDataManager.chooseClothing = 0;
+            ViewManager.GoBackFrom(typeof(ClothingSyntheticView).FullName);
+        }
+
+        private async void OnClickBtnProcuction()
+        {
+            if (ItemDataManager.GetItemNum(_selectedItemId) > 0)
+            {
+                PromptController.Instance.ShowFloatTextPrompt("不能制作已经拥有的物品");
+                return;
+            }
+
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(_selectedItemId);
+            if (itemCfg == null)
+            {
+                ET.Log.Error("OnClickBtnProcuction itemCfg is null");
+                return;
+            }
+
+            if (!ItemUtil.CheckItemEnough(itemCfg.syntheticCostID, itemCfg.syntheticCostNum))
+            {
+                long has = ItemDataManager.GetItemNum(itemCfg.syntheticCostID);
+                ItemUtil.BuyCurrency(itemCfg.syntheticCostID, itemCfg.syntheticCostNum - has);
+                return;
+            }
+
+            List<ItemData> materiarsOfSelectedItem = ItemUtil.CreateItemDataList(itemCfg.syntheticMateriarsArr);
+            for (int i = 0; i < materiarsOfSelectedItem.Count; i++)
+            {
+                ItemData itemData = materiarsOfSelectedItem[i];
+                if (itemData == null || !ItemUtil.CheckItemEnough(itemData.id, itemData.num, true)) return;
+            }
+            bool result = await ClothingSyntheticSProxy.ClothtingSynthetic(_selectedItemId);
+            if (result)
+            {
+                _selectedItemId = 0;
+                LogServerHelper.SendPlayParticipationLog((int)PlayParticipationEnum.FU_ZHUANG_HE_CHENG, 2);
+
+                // 发送服装合成成功事件
+                EventAgent.DispatchEvent(ConstMessage.CLOTHING_SYNTHETIC_SUCCESS);
+            }
+
+        }
+        private void UpdateView()
+        {
+            ItemCfg cardItem = ItemCfgArray.Instance.GetCfg(_cardId);
+            UpdateName(cardItem.name);
+            _ui.m_comImgCard.m_ComCardImgRes.m_loaCard.url = ResPathUtil.GetCardPath(cardItem.res);
+            UpdateSelectedItemInfo();
+        }
+
+        private void UpdateSelectedItemInfo()
+        {
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(_cardId);
+            //属性展示
+            RarityIconController.UpdateRarityIcon(_ui.m_loaRarity, _cardId, false);
+            _ui.m_txtGong.text = "" + itemCfg.score1;
+            _ui.m_txtShang.text = "" + itemCfg.score2;
+            _ui.m_txtJue.text = "" + itemCfg.score3;
+            _ui.m_txtZhi.text = "" + itemCfg.score4;
+            //合成显示
+            ItemCfg clothingSyntheticCfg = ItemCfgArray.Instance.GetCfg(_selectedItemId);
+            // string costName = ItemUtil.GetItemName(clothingSyntheticCfg.syntheticCostID);
+            // _ui.m_txtCost.SetVar("v1", "" + clothingSyntheticCfg.syntheticCostNum).SetVar("v2", costName).FlushVars();
+            if (clothingSyntheticCfg.syntheticCostID <= 0)
+            {
+                Log.Error($"请为物品 {clothingSyntheticCfg.id} 增加合成相关配置!");
+                return;
+            }
+            ItemUtil.UpdateItemNeedNum(_ui.m_comCostCurrency, clothingSyntheticCfg.syntheticCostID, clothingSyntheticCfg.syntheticCostNum);
+            _materiarsOfSelectedItem = ItemUtil.CreateItemDataList(clothingSyntheticCfg.syntheticMateriarsArr);
+            _ui.m_listMaterias.numItems = _materiarsOfSelectedItem.Count;
+
+
+            _ui.m_listMaterias.selectedIndex = 0;
+            _ui.m_btnProduction.grayed = ItemDataManager.GetItemNum(_selectedItemId) > 0;
+        }
+
+        private void UpdateName(string name)
+        {
+            string names = name;
+            _ui.m_txtName0.text = "";
+            _ui.m_txtName1.text = "";
+            _ui.m_txtName2.text = "";
+            _ui.m_txtName3.text = "";
+            _ui.m_txtName4.text = "";
+            switch (names.Length)
+            {
+                case 1:
+                    _ui.m_txtName0.text = names.Substring(0, 1);
+                    break;
+                case 2:
+                    _ui.m_txtName0.text = names.Substring(0, 1);
+                    _ui.m_txtName2.text = names.Substring(1, 1);
+                    break;
+                case 3:
+                    _ui.m_txtName0.text = names.Substring(0, 1);
+                    _ui.m_txtName1.text = names.Substring(1, 1);
+                    _ui.m_txtName2.text = names.Substring(2, 1);
+                    break;
+                case 4:
+                    _ui.m_txtName0.text = names.Substring(0, 1);
+                    _ui.m_txtName1.text = names.Substring(1, 1);
+                    _ui.m_txtName2.text = names.Substring(2, 1);
+                    _ui.m_txtName3.text = names.Substring(3, 1);
+                    break;
+                default:
+                    _ui.m_txtName0.text = names.Substring(0, 1);
+                    _ui.m_txtName1.text = names.Substring(1, 1);
+                    _ui.m_txtName2.text = names.Substring(2, 1);
+                    _ui.m_txtName3.text = names.Substring(3, 1);
+                    _ui.m_txtName4.text = names.Substring(4);
+                    break;
+            }
+        }
+        private void RenderListMateriasItem(int index, GObject obj)
+        {
+            UI_MateriasListItem listItem = UI_MateriasListItem.Proxy(obj);
+
+            ItemData itemData = _materiarsOfSelectedItem[index];
+            ItemCfg materiasItemCfg = ItemCfgArray.Instance.GetCfg(itemData.id);
+            listItem.m_txtName.text = ItemUtil.GetItemName(itemData.id);
+            listItem.m_loaderIcon.url = ResPathUtil.GetIconPath(materiasItemCfg);
+            long num = ItemDataManager.GetItemNum(itemData.id);
+            ItemCfg materialCfg = ItemCfgArray.Instance.GetCfg(itemData.id);
+            bool isDressUp = materialCfg.itemType == ConstItemType.DRESS_UP;
+            long numSynthetic = Math.Max(num, 0);
+            listItem.m_txtProgess.text = numSynthetic + "/" + itemData.num;
+            listItem.m_loaderIcon.visible = true;
+            listItem.m_txtProgess.visible = true;
+            // listItem.target.onClick.Clear();
+            // if (listItem.target.data == null)
+            // {
+            //     listItem.target.onClick.Add(OnClickMateriasItemPlus);
+            // }
+            listItem.target.data = index;
+            UI_MateriasListItem.ProxyEnd();
+        }
+        private void OnClickMateriasItemPlus(EventContext context)
+        {
+            GuideCfg cfg = GuideCfgArray.Instance.GetCfg(ConstGuideId.CLOTHING_SYNTHETIC);
+            if (GuideDataManager.currentGuideId == cfg.id)
+            {
+                return;
+            }
+            if (ItemDataManager.GetItemNum(_selectedItemId) > 0)
+            {
+                PromptController.Instance.ShowFloatTextPrompt("该材料已获得");
+                return;
+            }
+            int index = (int)(context.data as GObject).data;
+            _ui.m_listMaterias.selectedIndex = index;
+            ItemData itemData = _materiarsOfSelectedItem[index];
+            if (itemData == null)
+            {
+                ET.Log.Error("OnClickMateriasItemPlus itemData is null");
+                return;
+            }
+            object[] sourceDatas = new object[] { itemData.id, new object[] { typeof(ClothingSyntheticView).FullName, new object[] { _cardId, _selectedItemId } }, (int)itemData.num };
+            GoodsItemTipsController.ShowItemTips(itemData.id, sourceDatas);
+        }
+
+        private void OnItemNumChanged()
+        {
+            //列表选中项更新
+            UI_ClothingListItem selectedItem = UI_ClothingListItem.Proxy(_selectedListItem);
+            selectedItem.m_imgOwned.visible = ItemDataManager.GetItemNum(_selectedItemId) > 0;
+            UI_ClothingListItem.ProxyEnd();
+            UpdateSelectedItemInfo();
+        }
+
+
+        private void OnClickBtnHome()
+        {
+            GameController.GoBackToMainView();
+        }
+        private void CheckGuide(object param)
+        {
+            //if (GuideDataManager.IsGuideFinish(ConstGuideId.CLOTHING_SYNTHETIC) <= 0)
+            //{
+            //    UpdateToCheckGuide(null);
+            //}
+            //else
+            //{
+            //    Timers.inst.Remove(CheckGuide);
+            //}
+        }
+        protected override void UpdateToCheckGuide(object param)
+        {
+            //if (ViewManager.isViewOpen(typeof(GuideView).Name))
+            //{
+            //    (ViewManager.GetUIView(typeof(GuideView).Name) as GuideView).viewCom.visible = !ViewManager.isViewOpen(typeof(GetSuitItemVIew).Name);
+            //}
+            //if (!ViewManager.CheckIsTopView(this.viewCom)) return;
+
+            //int itemId = 10566;
+            //int itemIndex = 0;
+            //for (int i = 0; i < _ui.m_listClothing.numItems; i++)
+            //{
+            //    UI_ClothingListItem listItem = UI_ClothingListItem.Proxy(_ui.m_listClothing.GetChildAt(i));
+            //    int temp = (int)listItem.target.data;
+            //    UI_ClothingListItem.ProxyEnd();
+            //    if (temp == itemId)
+            //    {
+            //        itemIndex = i;
+            //        break;
+            //    }
+            //}
+
+            //bool guide = GuideController.TryGuide(_ui.m_listClothing, ConstGuideId.CLOTHING_SYNTHETIC, 3, "找到需要合成的物品。", itemIndex);
+            //if (guide) _ui.m_listClothing.ScrollToView(itemIndex);
+
+            //GuideController.TryGuide(_ui.m_listMaterias, ConstGuideId.CLOTHING_SYNTHETIC, 4, "这里可以查看合成需要的材料,和材料的获取途径。", 0);
+            //UI_MateriasListItem.ProxyEnd();
+
+            //GuideController.TryGuide(_ui.m_btnProduction, ConstGuideId.CLOTHING_SYNTHETIC, 5, "点击获得新的服饰。");
+            //GuideController.TryGuide(_ui.m_btnBack, ConstGuideId.CLOTHING_SYNTHETIC, 6, "获得新衣服啦,继续通关主线剧情吧。");
+        }
+
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/Card/CardSyntheticView.cs.meta

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

+ 1 - 1
GameClient/Assets/Game/HotUpdate/Views/ClothingDecompose/ClothingDecomposeView.cs

@@ -49,7 +49,7 @@ namespace GFGGame
 
             _ui.m_btnBack.onClick.Add(OnClickBtnBack);
 
-            _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("quanping_moren_bg");
+            _ui.m_loadBg.url = ResPathUtil.GetBgImgPath("quanping_moren_bg");
 
             _ui.m_listTab.onClickItem.Add((EventContext context) =>
             {

+ 14 - 9
GameClient/Assets/Game/HotUpdate/Views/InstanceZones/InstanceZonesView.cs

@@ -52,7 +52,7 @@ namespace GFGGame
             _ui.m_btnStudio.target.onClick.Add(OnClickBtnStudio);
             _ui.m_btnTravel.target.onClick.Add(OnClickBtnTravel);
             _ui.m_btnPoem.target.onClick.Add(OnClickBtnPoem);
-            _ui.m_btnField.target.onClick.Add(OnClickBtnField);
+            _ui.m_btnField.target.onClick.Add(OnTimeTracingClick);
             _ui.m_btnArena.target.onClick.Add(OnClickBtnArena);
             _ui.m_btnBack.onClick.Add(OnClickBtnBack);
             _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("hzs_bg");
@@ -94,7 +94,8 @@ namespace GFGGame
         {
             if (GuideDataManager.IsGuideFinish(ConstGuideId.STUDIO_PORCELAIN) <= 0
                 || GuideDataManager.IsGuideFinish(ConstGuideId.STUDIO_PROPERTY) <= 0
-                || GuideDataManager.IsGuideFinish(ConstGuideId.STUDIO_FILING) <= 0)
+                || GuideDataManager.IsGuideFinish(ConstGuideId.STUDIO_FILING) <= 0
+                || GuideDataManager.IsGuideFinish(ConstGuideId.POEM) <= 0)
                 //|| GuideDataManager.IsGuideFinish(ConstGuideId.FIELD) <= 0)
             {
                 UpdateToCheckGuide(null);
@@ -110,16 +111,15 @@ namespace GFGGame
             _valueBarController.UpdateRedPoint();
             RedDotController.Instance.SetComRedDot(_ui.m_btnStudio.target, RedDotDataManager.Instance.GetStudioFilingRed(), "", -126, 22);
             RedDotController.Instance.SetComRedDot(_ui.m_btnTravel.target, RedDotDataManager.Instance.GetTravelRed(), "", -152, 85);
-            RedDotController.Instance.SetComRedDot(_ui.m_btnField.target, RedDotDataManager.Instance.GetFieldRed(), "", -103, 43);
-            RedDotController.Instance.SetComRedDot(_ui.m_btnPoem.target, TimeTracingDataManager.Instance.GetLevelRewardStatus() || TimeTracingDataManager.Instance.GetAllChapterReward());
+            RedDotController.Instance.SetComRedDot(_ui.m_btnField.target, TimeTracingDataManager.Instance.GetLevelRewardStatus() || TimeTracingDataManager.Instance.GetAllChapterReward(), "", -103, 43);
         }
 
         private void CheckFunOpen()
         {
-            _ui.m_btnPoem.m_loaLockIcon.visible = !FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(PoemView).Name, false);
+            _ui.m_btnPoem.m_loaLockIcon.visible = !FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(PoemPhotoView).Name, false);
             _ui.m_btnStudio.m_loaLockIcon.visible = !FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(StudioView).Name, false);
             _ui.m_btnTravel.m_loaLockIcon.visible = !FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(TravelView).Name, false);
-            _ui.m_btnField.m_loaLockIcon.visible = !FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(FieldView).Name, false);
+            _ui.m_btnField.m_loaLockIcon.visible = false;//!FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(FieldView).Name, false);
             _ui.m_btnArena.m_loaLockIcon.visible = !FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(ArenaView).Name, false);
         }
 
@@ -140,7 +140,7 @@ namespace GFGGame
 
         private void OnClickBtnPoem()
         {
-            ViewManager.Show<PoemView>();
+            ViewManager.Show<PoemPhotoView>();
         }
 
         private void OnClickBtnField()
@@ -148,8 +148,12 @@ namespace GFGGame
             LogServerHelper.SendPlayParticipationLog((int)PlayParticipationEnum.TIAN_YE_DIAO_CHA, 1);
             ViewManager.Show<FieldView>();
         }
+        private void OnTimeTracingClick()
+        {
+            ViewManager.Show<TimeTracingShowView>();
+        }
 
-        private void OnClickBtnArena()
+        private async void OnClickBtnArena()
         {
             if (!FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(ArenaView).Name))
             {
@@ -160,7 +164,7 @@ namespace GFGGame
                 PromptController.Instance.ShowFloatTextPrompt("赛季未开始");
                 return;
             }
-
+            await ArenaSproxy.ReqArenaInfos();
             ViewManager.Show<ArenaView>(this.viewData);
             ViewManager.Show<ArenaLoadingView>();
         }
@@ -173,6 +177,7 @@ namespace GFGGame
             GuideController.TryGuide(_ui.m_btnStudio.target, ConstGuideId.STUDIO_FILING, 3, "工作室有新的任务啦。");
             //GuideController.TryGuide(_ui.m_btnField.target, ConstGuideId.FIELD, 2, "外出进行历史考察,会有意想不到的收获哦。");
             GuideController.TryGuide(_ui.m_btnStudio.target, ConstGuideId.STUDIO_PROPERTY, 2, "");
+            //GuideController.TryGuide(_ui.m_btnPoem.target, ConstGuideId.POEM, 1, "在“拍照”中保存的图片都会保存到这里。");
             GuideController.TryGuide(_ui.m_btnArena.target, ConstGuideId.ARENA_OPEN, 3, "在这里可以与其他小伙伴比拼搭配哦~");
             GuideController.TryGuide(_ui.m_btnBack, ConstGuideId.ENTER_CHAPTER_5, 1, "", -1, false);
         }

+ 17 - 17
GameClient/Assets/Game/HotUpdate/Views/LuckyBox/LuckyBoxBonusShowView.cs

@@ -196,7 +196,7 @@ namespace GFGGame
             item.m_comIcon.m_c1.selectedIndex = itemCfg.rarity;
             item.m_comIcon.m_txtName.text = itemCfg.name;
             item.m_comIcon.m_icon.url = ResPathUtil.GetIconPath(itemCfg);
-            item.m_comIcon.m_FlipOpenType.selectedIndex = 1;
+            item.m_comIcon.m_FlipOpenType.selectedIndex = 0;
             item.m_comIcon.m_t1.Play();
 
             // 圆盘出现时等待玩家点击的特效
@@ -274,7 +274,7 @@ namespace GFGGame
             item.m_t0.Play();
             if (item.target.data == null)
             {
-                item.target.onClick.Add(ShowItemTips);
+                //item.target.onClick.Add(ShowItemTips);
             }
             item.target.data = index;
 
@@ -356,18 +356,18 @@ namespace GFGGame
                 _chooseIndex = -1;
                 this.Hide();
             }
-            else
-            {
-                for (int index = 0; index < _rewardList.Count; index++)
-                {
-                    if (!_recordOpenIndex.Contains(index))
-                    {
-                        _chooseIndex = index;
-                        HandClickItem(index);
-                        break;
-                    }
-                }
-            }
+            //else
+            //{
+            //    for (int index = 0; index < _rewardList.Count; index++)
+            //    {
+            //        if (!_recordOpenIndex.Contains(index))
+            //        {
+            //            _chooseIndex = index;
+            //            HandClickItem(index);
+            //            break;
+            //        }
+            //    }
+            //}
         }
 
         private void OnClickBtnPass()
@@ -550,9 +550,9 @@ namespace GFGGame
                     _recordTurnIndex.Add(index);
 
                 //先翻开牌面 
-                item.m_comIcon.m_FlipOpenType.selectedIndex = 0;
+                //item.m_comIcon.m_FlipOpenType.selectedIndex = 0;
                 //item.m_t1.Play();
-                item.m_t2.Play();
+                //item.m_t2.Play();
 
                 ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(_itemIdList[index]);
 
@@ -584,7 +584,7 @@ namespace GFGGame
                 }
 
 
-                item.m_comIcon.m_t0.Play();
+                //item.m_comIcon.m_t0.Play();
                 _recordOpenIndex.Add(index);
                 UI_LuckyBoxBonusShowItem.ProxyEnd();
             }

+ 3 - 2
GameClient/Assets/Game/HotUpdate/Views/LuckyBox/LuckyBoxStarView.cs

@@ -349,9 +349,10 @@ namespace GFGGame
 
                 RemoveListener();
                 //ViewManager.Show<LuckyBoxBonusView>(new object[] { _rewardList });
-
-                ViewManager.Show<LuckyBoxBonusShowView>(_rewardList);
                 this.Hide();
+                LuckyBoxVideoView.Instance.Show(_rewardList);
+                //ViewManager.Show<LuckyBoxBonusShowView>(_rewardList);
+                
                 //ViewManager.Show<LuckyBoxNewDressView>(_rewardList);
 
             }

+ 131 - 0
GameClient/Assets/Game/HotUpdate/Views/LuckyBox/LuckyBoxVideoView.cs

@@ -0,0 +1,131 @@
+using UnityEngine;
+using UnityEngine.UI;
+using UnityEngine.Video;
+using YooAsset;
+using GFGGame.Launcher;
+using System.Collections;
+using System.Collections.Generic;
+
+namespace GFGGame
+{
+    public class LuckyBoxVideoView : SingletonMonoBase<LuckyBoxVideoView>
+    {
+        private const float VideoWidth = 1080f;
+        private const float VideoHeight = 1920f;
+        private GameObject _ui;
+        private AssetOperationHandle handle;
+        private RawFileOperationHandle videoHandle;
+        private RawImage imgVideo;
+        private Button BtnSkipVertical;
+        private VideoPlayer videoPlayer;
+        private List<ItemData> _rewardList;
+
+        public void Show(List<ItemData> _reward = null)
+        {
+            MusicManager.Instance.Stop();
+            string path = ResPathUtil.GetUUIPrefabPath("UILuckyBox");
+            handle = YooAssets.LoadAssetSync<GameObject>(path);
+            _ui = handle.InstantiateSync(UGUIManager.Instance.desktop.transform);
+            imgVideo = _ui.transform.Find("ImgVideo").GetComponent<RawImage>();
+            Vector2 imgVideoSizeDelta = imgVideo.rectTransform.sizeDelta;
+            imgVideoSizeDelta.y = Screen.height;
+            imgVideoSizeDelta.x = (VideoWidth / VideoHeight) * imgVideoSizeDelta.y;
+            imgVideo.rectTransform.sizeDelta = imgVideoSizeDelta;
+
+
+            BtnSkipVertical = _ui.transform.Find("BtnSkipVertical").GetComponent<Button>();
+            BtnSkipVertical.onClick.AddListener(OnClickrectBtnSkip);
+            BtnSkipVertical.gameObject.SetActive(false);
+
+            videoPlayer = _ui.transform.Find("VideoPlayer").GetComponent<VideoPlayer>();
+            videoPlayer.loopPointReached += OnVideoEnded;
+            videoPlayer.prepareCompleted += OnVideoPrepared;
+
+            string assetPath = ResPathUtil.GetVideoPath("normalLucky");
+            videoHandle = YooAssets.LoadRawFileSync(assetPath);
+            videoPlayer.url = videoHandle.GetRawFilePath();
+            videoPlayer.Play();
+
+            _rewardList = _reward;
+        }
+
+        private void OnVideoPrepared(VideoPlayer source)
+        {
+            videoPlayer.prepareCompleted -= OnVideoPrepared;
+            StartCoroutine(FadeButtonOverTime(BtnSkipVertical));
+        }
+
+        IEnumerator FadeButtonOverTime(Button btn)
+        {
+            Image buttonImage = btn.GetComponent<Image>();
+            //Image img = btn.GetComponentInChildren<Image>();
+            yield return new WaitForSeconds((float)videoPlayer.length - 3f);
+            if (buttonImage != null)
+            {
+                // 获取初始颜色
+                Color startColor = buttonImage.color;
+                //Color startColorText = img.color;
+
+                // 目标颜色,透明度设为 0
+                Color targetColor = new Color(startColor.r, startColor.g, startColor.b, 0f);
+                //Color targetColorText = new Color(startColorText.r, startColorText.g, startColorText.b, 0f);
+
+                float fadeDuration = 1f;
+                // 记录开始时间
+                float startTime = Time.time;
+
+                while (Time.time - startTime < fadeDuration)
+                {
+                    // 在一定时间内逐渐插值颜色
+                    float t = (Time.time - startTime) / fadeDuration;
+                    buttonImage.color = Color.Lerp(startColor, targetColor, t);
+                    //img.color = Color.Lerp(startColorText, targetColorText, t);
+                    yield return null; // 等待下一帧
+                }
+
+                // 设置最终颜色,确保透明度为 0
+                buttonImage.color = targetColor;
+                //img.color = targetColorText;
+            }
+        }
+
+        private void OnVideoEnded(VideoPlayer source)
+        {
+            this.Hide();
+        }
+
+        private void OnClickrectBtnSkip()
+        {
+            Hide();
+        }
+
+        private void OnClickBtnFullScreen()
+        {
+            BtnSkipVertical.gameObject.SetActive(false);
+            imgVideo.rectTransform.localRotation = Quaternion.Euler(0, 0, -90);
+            Vector2 imgVideoSizeDelta = imgVideo.rectTransform.sizeDelta;
+            imgVideoSizeDelta.y = Screen.width;
+            imgVideoSizeDelta.x = (VideoWidth / VideoHeight) * imgVideoSizeDelta.y;
+            imgVideo.rectTransform.sizeDelta = imgVideoSizeDelta;
+            if (videoPlayer.time <= 3)
+            {
+                videoPlayer.Stop();
+                videoPlayer.Play();
+            }
+        }
+
+        public void Hide()
+        {
+            StopAllCoroutines();
+            videoPlayer.Stop();
+            videoPlayer.loopPointReached -= OnVideoEnded;
+            handle.Release();
+            handle = null;
+            videoHandle.Release();
+            videoHandle = null;
+            GameObject.Destroy(_ui);
+            _ui = null;
+            ViewManager.Show<LuckyBoxBonusShowView>(_rewardList);
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/LuckyBox/LuckyBoxVideoView.cs.meta

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

+ 88 - 3
GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryChapterListView.cs

@@ -3,6 +3,8 @@ using FairyGUI;
 using System.Collections.Generic;
 using UI.Main;
 using UnityEngine;
+using UnityEngine.PlayerLoop;
+
 namespace GFGGame
 {
     public class StoryChapterListView : BaseWindow
@@ -12,6 +14,7 @@ namespace GFGGame
         private int subType = ConstInstanceZonesSubType.Normal;
         private List<StoryChapterCfg> _chapterCfgs;
         private int chapterIndex = 1;
+        private int rewardID = 0;
         public override void Dispose()
         {
             if (_ui != null)
@@ -50,6 +53,17 @@ namespace GFGGame
 
 
         }
+        protected override void AddEventListener()
+        {
+            base.AddEventListener();
+            EventAgent.AddEventListener(ConstMessage.STORYCHAPREDUPDATE, UpdateChapterRed);
+        }
+
+        protected override void RemoveEventListener()
+        {
+            base.RemoveEventListener();
+            EventAgent.RemoveEventListener(ConstMessage.STORYCHAPREDUPDATE,UpdateChapterRed);
+        }
 
         protected override void OnShown()
         {
@@ -144,6 +158,39 @@ namespace GFGGame
             }
 
         }
+        private async void OnClickReward(EventContext context)
+        {
+            GObject chapterItem = context.sender as GObject;
+            int chapterID = (int)chapterItem.data;
+            rewardID = chapterID;
+            int status;
+            if(MainStoryDataManager.ChapterRewardStatusDic.TryGetValue(chapterID,out status) && status == 1)
+            {
+                //领取奖励
+                bool result = await MainStorySProxy.GetStoryBonusReward(chapterID);
+                if(result)
+                {
+                    EventAgent.DispatchEvent(ConstMessage.STORYCHAPREDUPDATE);
+                    return;
+                }
+            }
+        }
+
+        private void UpdateChapterRed()
+        {
+            //UpdateList();
+            foreach (var item in ChapterRewardCfgArray.Instance.dataArray)
+            {
+                if (item.chapterId == rewardID)
+                {
+                    UI_ListChapterItem listItem = UI_ListChapterItem.Proxy(_ui.m_listChapter.GetChildAt(item.id%10));
+                    listItem.m_content.m_reward.target.visible = false;
+                    RedDotController.Instance.SetComRedDot(listItem.m_content.m_reward.target, false, "");
+                    UI_ListChapterItem.ProxyEnd();
+                }
+            }
+
+        }
 
         private void ListChapterItem(int index, GObject item)
         {
@@ -202,12 +249,12 @@ namespace GFGGame
 
             // listItem.m_content.m_txtTitle.text = chapterCfg.name;
             listItem.m_content.m_compPic.m_pic.url = "ui://Main/" + chapterCfg.res;
-            if (listItem.m_content.target.data == null)
+            if (listItem.m_content.m_compPic.target.data == null)
             {
-                listItem.m_content.target.onClick.Add(OnClickListChapterItem);
+                listItem.m_content.m_compPic.target.onClick.Add(OnClickListChapterItem);
             }
             listItem.target.data = chapterCfg.id;
-            listItem.m_content.target.data = chapterCfg.id;
+            listItem.m_content.m_compPic.target.data = chapterCfg.id;
             RedDotController.Instance.SetComRedDot(listItem.m_content.target, RedDotDataManager.Instance.GetChapterRed(chapterCfg.id), "", -100, (int)listItem.m_content.m_txtCurProgress.y - 20);
             UI_ListChapterItem.ProxyEnd();
         }
@@ -266,9 +313,42 @@ namespace GFGGame
                     listItem.m_content.m_imgLockBg.visible = false;
                     listItem.m_content.m_txtLockDesc.visible = false;
                     currentChapterIndex = i;
+                    List<StoryLevelCfg> storylevelList = StoryLevelCfgArray.Instance.GetCfgsBytypeAndsubTypeAndchapterId(chapterCfg.type,chapterCfg.subType,chapterCfg.id);
+                    
+                    if(InstanceZonesDataManager.CheckLevelPass(storylevelList[storylevelList.Count - 1].id))
+                    {
+                        listItem.m_content.m_reward.target.visible = true;
+                        RedDotController.Instance.SetComRedDot(listItem.m_content.m_reward.target, false, "");
+                        int status;
+                        if (MainStoryDataManager.ChapterRewardStatusDic.TryGetValue(chapterID, out status))
+                        {
+                            ChapterRewardCfg chapterReward = ChapterRewardCfgArray.Instance.GetCfgBychapterId(chapterID);
+                            listItem.m_content.m_reward.m_rewardIcon.url = ResPathUtil.GetIconPath(ItemCfgArray.Instance.GetCfg(chapterReward.bonusOnceArr[0][0]).res, "png");
+                            listItem.m_content.m_reward.m_rewardNum.text = string.Format("x{0}", chapterReward.bonusOnceArr[0][1].ToString());
+                        }
+                        if (MainStoryDataManager.ChapterRewardStatusDic.TryGetValue(chapterID, out status) && status == 1)
+                        {
+                            RedDotController.Instance.SetComRedDot(listItem.m_content.m_reward.target, true, "",-50,20);
+                        }
+                        else if (MainStoryDataManager.ChapterRewardStatusDic.TryGetValue(chapterID, out status) && status == 2)
+                        {
+                            listItem.m_content.m_reward.target.visible = false;
+                        }
+
+                        if (listItem.m_content.m_reward.target.data == null)
+                        {
+                            listItem.m_content.m_reward.target.onClick.Add(OnClickReward);
+                        }
+                        listItem.m_content.m_reward.target.data = chapterID;
+                    }
+                    else
+                    {
+                        listItem.m_content.m_reward.target.visible = false;
+                    }
                 }
                 else
                 {
+                    listItem.m_content.m_reward.target.visible = false;
                     listItem.m_content.m_imgLockBg.visible = true;
                     listItem.m_content.m_txtLockDesc.visible = true;
                     if (chapterCfg.lvl > GameGlobal.myNumericComponent.GetAsInt(NumericType.Lvl))
@@ -288,6 +368,11 @@ namespace GFGGame
                         }
                     }
                 }
+                //暂定精英关卡不显示
+                if (subType == 1)
+                {
+                    listItem.m_content.m_reward.target.visible = false;
+                }
                 UI_ListChapterItem.ProxyEnd();
             }
             if (isView)

+ 15 - 2
GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryChapterView.cs

@@ -20,6 +20,9 @@ namespace GFGGame
         private EffectUI _effectUI2;
         private EffectUI _effectUI3;
         private EffectUI _effectUI4;
+        private EffectUI _effectUI5;
+        private EffectUI _effectUI6;
+        private EffectUI _effectUI7;
         private GComponent _comEff;
         private GComponent _effFirst;
 
@@ -41,6 +44,12 @@ namespace GFGGame
             EffectUIPool.Recycle(_effectUI3);
             _effectUI3 = null;
             EffectUIPool.Recycle(_effectUI4);
+            _effectUI5 = null;
+            EffectUIPool.Recycle(_effectUI5);
+            _effectUI6 = null;
+            EffectUIPool.Recycle(_effectUI6);
+            _effectUI7 = null;
+            EffectUIPool.Recycle(_effectUI7);
             _effectUI4 = null;
             if (_comEff != null)
             {
@@ -106,6 +115,9 @@ namespace GFGGame
             _effFirst = UIPackage.CreateObject(UI_MainUI.PACKAGE_NAME, "ComEff").asCom;
             _effectUI3 = EffectUIPool.CreateEffectUI(_ui.m_bgEffect, "ui_zj", "ZX_BG_TX");
             _effectUI4 = EffectUIPool.CreateEffectUI(_ui.m_chapter.m_compChapterScroll.m_nextEffect, "ui_zj", "ZX_Next_Boat");
+            _effectUI5 = EffectUIPool.CreateEffectUI(_ui.m_bonusBox1.m_effect, "ui_zj", "Claimed");
+            _effectUI6 = EffectUIPool.CreateEffectUI(_ui.m_bonusBox2.m_effect, "ui_zj", "Claimed");
+            _effectUI7 = EffectUIPool.CreateEffectUI(_ui.m_bonusBox3.m_effect, "ui_zj", "Claimed");
 
         }
         protected override void AddEventListener()
@@ -505,14 +517,15 @@ namespace GFGGame
         {
             int status = MainStoryDataManager.GetChapterBonusStatus(_chapterID, index);
             bonusBox.m_iconActive.visible = status == ConstBonusStatus.CAN_GET;
+            bonusBox.m_effect.visible = status == ConstBonusStatus.CAN_GET;
             // bonusBox.m_ComRewardEffect.visible = status == ConstBonusStatus.CAN_GET;
             if (status == ConstBonusStatus.GOT)
             {
-                bonusBox.m_icon.url = "ui://Main/zxian_gift_get";
+                bonusBox.m_icon.url = "ui://Main/tgjljinnang_off";
             }
             else
             {
-                bonusBox.m_icon.url = "ui://Main/zxian_gift_unget";
+                bonusBox.m_icon.url = "ui://Main/tgjljinnang_no";
             }
             bonusBox.target.data = status;
         }

+ 1 - 0
GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryController.cs

@@ -23,6 +23,7 @@ namespace GFGGame
 
                 if (fistPassLastLvl)
                 {
+                    MainStorySProxy.GetStoryBonusDate().Coroutine();
                     StoryLevelCfg levelCfg = StoryLevelCfgArray.Instance.GetCfg(levelCfgId);
                     StoryChapterCfg nextStoryChapterCfg = StoryChapterCfgArray.Instance.GetCfg(levelCfg.chapterId + 1);
                     if (nextStoryChapterCfg != null)

+ 186 - 45
GameClient/Assets/Game/HotUpdate/Views/MainUI/MainUIView.cs

@@ -36,6 +36,7 @@ namespace GFGGame
         private GButton _btnField;
         private GButton _btnBag;
         private GButton _btnActivityDay7;
+        private GButton _btnGallery;
         private List<EffectUI> _effectUIList = new List<EffectUI>();
         private UI_ButtonModle1[] _btns;
         private bool firstIn;
@@ -93,6 +94,7 @@ namespace GFGGame
             _btnStore = _ui.m_list.GetChild("btnStore").asButton;
             _btnTuJian = _ui.m_list.GetChild("btnTuJian").asButton;
             _btnBag = _ui.m_list.GetChild("btnBag").asButton;
+            _btnGallery = _ui.m_list.GetChild("btnGallery").asButton;
 
             _btnActivityDay7 = _ui.m_btnActivityDay7.target;
 
@@ -129,6 +131,10 @@ namespace GFGGame
             _ui.m_btnHaiZhiShi.target.onClick.Add(OnClickBtnInstanceZones);
             _ui.m_touchMask.onClick.Add(ShowMainUI);
             _ui.m_btnShow.target.onClick.Add(HideMainUI);
+            _ui.m_btnNewPlayerReward.target.onClick.Add(OnClickNewPlayerReward);
+            _ui.m_btnSevenReward.target.onClick.Add(OnClickSevenReward);
+            _ui.m_btnPearRebate.target.onClick.Add(OnClickPearRabate);
+            _btnGallery.onClick.Add(OnClickGallery);
 
             _ui.m_comListAd.m_listAd.itemRenderer = RenderListAdItem;
             _ui.m_comListAd.m_listAd.SetVirtualAndLoop();
@@ -189,6 +195,7 @@ namespace GFGGame
                 _sceneObject = PrefabManager.Instance.InstantiateSync(ResPathUtil.GetPrefabPath("SceneMain"));
             }
             _ui.m_btnNewYearRedEnvelope.target.visible = false;
+            _ui.m_btnNewPlayerReward.target.visible = false;
             SceneController.UpdateMainScene(_sceneObject);
             UpdateRoleLvl();
             UpdateHead();
@@ -474,6 +481,10 @@ namespace GFGGame
         {
             ViewManager.Show<BagView>();
         }
+        private void OnClickGallery()
+        {
+            ViewManager.Show<PoemGalleryView>();
+        }
 
         private void OnClickBtnLeague()
         {
@@ -506,6 +517,10 @@ namespace GFGGame
             LogServerHelper.SendPlayParticipationLog((int)PlayParticipationEnum.TU_JIAN, 1);
             ViewManager.Show<FieldGuideView>();
         }
+        private void OnClickPearRabate()
+        {
+            ViewManager.Show<PearRebateTipsView>();
+        }
 
         private void OnClickBtnYouJian()
         {
@@ -550,6 +565,15 @@ namespace GFGGame
             ViewManager.Show<RoleInfoView>();
         }
 
+        private void OnClickNewPlayerReward()
+        {
+            ViewManager.Show<NewPlayersTipsView>();
+        }
+        private void OnClickSevenReward()
+        {
+            ViewManager.Show<SevenDayLoginView>();
+        }
+
         //列表
         private void OnClickBtnGiftBag1()
         {
@@ -571,19 +595,20 @@ namespace GFGGame
         //圆形
         private void OnClickBtnGiftBag2()
         {
-            var activityInfoByTypeList =
-                ActivityGlobalDataManager.Instance.GetActivityInfoByType(ActivityType.XSLB2);
+            //var activityInfoByTypeList =
+            //    ActivityGlobalDataManager.Instance.GetActivityInfoByType(ActivityType.XSLB2);
 
-            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.XSLB2, this.viewData });
-            }
+            //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.XSLB2, this.viewData });
+            //}
+            ViewManager.Show<ZGTHgiftTipsView>();
         }
 
         //列表样式
@@ -657,7 +682,7 @@ namespace GFGGame
 
             //特惠礼包/限时礼包窗口内的倒计时
             UpGiftBox1();
-            UpGiftBox2();
+            //UpGiftBox2();
             EventAgent.DispatchEvent(ConstMessage.LUCKY_BOX_TIME);
             UpdateRedDot();
         }
@@ -693,6 +718,7 @@ namespace GFGGame
 
         private void UpdateLimitedActvityState()
         {
+            _ui.m_btnNewPlayerReward.target.visible = false;
             int actLimitTsyId = ActivityDataManager.Instance.GetCurOpenActiveByType(ConstLimitTimeActivityType.ActLimitTsy);
             if (actLimitTsyId > 0)
             {
@@ -717,12 +743,13 @@ namespace GFGGame
             if (ActivityDataManager.Instance.lastActLimitChargeId != actLimitChargeId)
             {
                 ActivityDataManager.Instance.actLimitChargeId = actLimitChargeId;
-                _ui.m_btnDailyWelfare.target.visible = actLimitChargeId > 0 ||
-                FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailyWelfareView).Name, false) && (
-                FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailySignView).Name, false) ||
-                FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailySupplyView).Name, false) ||
-                !(!FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(SevenDayLoginView).Name, false) ||
-                ActivityDataManager.Instance.AllSevenDayBonusGot()));
+                //_ui.m_btnDailyWelfare.target.visible = actLimitChargeId > 0 ||
+                //FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailyWelfareView).Name, false) && (
+                //FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailySignView).Name, false) ||
+                //FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailySupplyView).Name, false) ||
+                //!(!FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(SevenDayLoginView).Name, false) ||
+                //ActivityDataManager.Instance.AllSevenDayBonusGot()));
+                _ui.m_btnDailyWelfare.target.visible = false;
             }
 
             int activeNewYearRedPacketId = ActivityDataManager.Instance.GetCurOpenActiveByType(ActivityType.NewYearRedPacket);
@@ -731,6 +758,63 @@ namespace GFGGame
             _ui.m_btnWanShiLi.target.visible = ActivityWanShiLiDataManager.Instance.CheckOpen();
             _ui.m_btnTea.target.visible = ActivityDataManager.Instance.GetCurOpenActiveByType(12) == 0 ? false : true;
             _ui.m_btnActivityZCJB.target.visible = ActivityDataManager.Instance.GetCurOpenActiveByType(17) == 0 ? false: true;
+            _ui.m_btnNewPlayerReward.target.visible = (!ActivityDataManager.Instance.IsGetNewPlayerReward&& GameGlobal.AutoNewPlayersTips);
+
+            _ui.m_btnSevenReward.target.visible = !ActivityDataManager.Instance.AllSevenDayBonusGot();
+            _ui.m_btnPearRebate.target.visible = ActivityDataManager.Instance.CheckPearRebateTips(6000);
+
+            _ui.m_btnGiftBag1.target.visible = ActivityDataManager.Instance.CheckPearRebateTips(6002);
+            var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(6002);
+            long endTime = 0;
+            if (activityInfo != null)
+            {
+                endTime = activityInfo.EndTime;
+            }
+            var leftTime = endTime - TimeHelper.ServerNow();
+            _ui.m_btnGiftBag1.m_txtTime.text = TimeUtil.FormattingTimeTo_DDHHmm((int)leftTime);
+
+            UpdateSevenIcon();
+
+            if (!ActivityDataManager.Instance.IsGetNewPlayerReward)
+            {
+                RedDotController.Instance.SetComRedDot(_ui.m_btnNewPlayerReward.target, true, "", -8);
+            }
+        }
+
+        private void UpdateSevenIcon()
+        {
+            if(ActivityDataManager.Instance.CanGetSevenDayBonus())
+            {
+                //显示今日可领取
+                int id = DailyLoginCfgArray.Instance.dataArray[ActivityDataManager.Instance.NowSevenDayBonusDay(true)].rewardsArr[0][0];
+                if (DailyLoginCfgArray.Instance.dataArray[ActivityDataManager.Instance.NowSevenDayBonusDay(true)]
+                        .type == 2)
+                {
+                    _ui.m_btnSevenReward.m_Icon.url = ResPathUtil.GetIconPath("tz_kongquednf","png");
+                }
+                else
+                {
+                    _ui.m_btnSevenReward.m_Icon.url = ResPathUtil.GetIconPath(ItemCfgArray.Instance.GetCfg(id).res,"png");
+                }
+                _ui.m_btnSevenReward.m_textIcon.url = "ui://Main/zjm_hdjrkl";
+                RedDotController.Instance.SetComRedDot(_ui.m_btnSevenReward.target, true, "", -8);
+            }
+            else if(ActivityDataManager.Instance.HaveGetSevenDayBonus() && ActivityDataManager.Instance.NowSevenDayBonusDay(false)<6)
+            {
+                //显示明日可领取
+                int id = DailyLoginCfgArray.Instance.dataArray[ActivityDataManager.Instance.NowSevenDayBonusDay(false)+1].rewardsArr[0][0];
+                if (DailyLoginCfgArray.Instance.dataArray[ActivityDataManager.Instance.NowSevenDayBonusDay(false)+1]
+                        .type == 2)
+                {
+                    _ui.m_btnSevenReward.m_Icon.url = ResPathUtil.GetIconPath("tz_kongquednf","png");
+                }
+                else
+                {
+                    _ui.m_btnSevenReward.m_Icon.url = ResPathUtil.GetIconPath(ItemCfgArray.Instance.GetCfg(id).res,"png");
+                }
+                _ui.m_btnSevenReward.m_textIcon.url = "ui://Main/zjm_hdmrkl";
+                RedDotController.Instance.SetComRedDot(_ui.m_btnSevenReward.target, false, "", -8);
+            }
         }
 
         private void UpdateTime()
@@ -870,23 +954,24 @@ namespace GFGGame
             AdCfg adCfg = obj.data as AdCfg;
             object[] param = null;
             int jumpIndex = 0;
-            if (adCfg.jumpId == nameof(LimitChargeView))
-            {
-                param = new object[] { adCfg.activityId };
-            }
-            if (adCfg.jumpId == nameof(NewLimitChargeView))
-            {
-                param = new object[] { adCfg.activityId };
-            }
-            if (adCfg.jumpId == nameof(LuckyBoxView))
-            {
-                jumpIndex = adCfg.jumpParamArr[0];
-            }
+            //if (adCfg.jumpId == nameof(LimitChargeView))
+            //{
+            //    param = new object[] { adCfg.activityId };
+            //}
+            //if (adCfg.jumpId == nameof(NewLimitChargeView))
+            //{
+            //    param = new object[] { adCfg.activityId };
+            //}
+            //if (adCfg.jumpId == nameof(LuckyBoxView))
+            //{
+            //    jumpIndex = adCfg.jumpParamArr[0];
+            //}
 
-            if (jumpIndex != 0)
-                ViewManager.Show($"GFGGame.{adCfg.jumpId}", jumpIndex);
-            else
-                ViewManager.Show($"GFGGame.{adCfg.jumpId}", param);
+            //if (jumpIndex != 0)
+            //    ViewManager.Show($"GFGGame.{adCfg.jumpId}", jumpIndex);
+            //else
+            //    ViewManager.Show($"GFGGame.{adCfg.jumpId}", param);
+            ViewManager.Show<DailyWelfareView>();
         }
         private void OnListAdScrollEnd()
         {
@@ -897,7 +982,7 @@ namespace GFGGame
         {
             _ui.m_btnGiftBag1.target.visible = false;
             _ui.m_btnGiftBag2.target.visible = false;
-
+            _ui.m_btnNewPlayerReward.target.visible = false;
             _ui.m_btnHaiZhiShi.m_loaLockIcons.visible = false;
 
             _ui.m_btnXiuFang.m_loaLockIcons.visible = !FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(XiuFangView).Name, false);
@@ -909,12 +994,22 @@ namespace GFGGame
             _ui.m_btnOpenServerActivity.target.visible = ActivityDataManager.Instance.GetCurOpenActiveByType(ConstLimitTimeActivityType.ActLimitStlyc) > 0;
             List<int> actListChargeIds = ActivityGlobalDataManager.Instance.GetActivityInfoIdsByType(ConstLimitTimeActivityType.ActLimitChargeId);
             int actLimitChargeId = actListChargeIds.Count > 0 ? actListChargeIds[0] : 0;
-            _ui.m_btnDailyWelfare.target.visible = actLimitChargeId > 0 ||
-            FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailyWelfareView).Name, false) && (
-            FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailySignView).Name, false) ||
-            FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailySupplyView).Name, false) ||
-            !(!FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(SevenDayLoginView).Name, false) ||
-            ActivityDataManager.Instance.AllSevenDayBonusGot()));
+            //_ui.m_btnDailyWelfare.target.visible = actLimitChargeId > 0 ||
+            //FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailyWelfareView).Name, false) && (
+            //FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailySignView).Name, false) ||
+            //FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(DailySupplyView).Name, false) ||
+            //!(!FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(SevenDayLoginView).Name, false) ||
+            //ActivityDataManager.Instance.AllSevenDayBonusGot()));
+            _ui.m_btnDailyWelfare.target.visible = false;
+            _ui.m_btnNewPlayerReward.target.visible = (!ActivityDataManager.Instance.IsGetNewPlayerReward&& GameGlobal.AutoNewPlayersTips);
+            if(!ActivityDataManager.Instance.IsGetNewPlayerReward)
+            {
+                RedDotController.Instance.SetComRedDot(_ui.m_btnNewPlayerReward.target, true, "", -8);
+            }
+
+            _ui.m_btnSevenReward.target.visible = !ActivityDataManager.Instance.AllSevenDayBonusGot();
+            UpdateSevenIcon();
+
             _btnGongGao.visible = FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(NoticeView).Name, false);
             _btnHaoYou.visible = FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(FriendView).Name, false);
             _btnYouJian.visible = FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(MailView).Name, false);
@@ -970,7 +1065,7 @@ namespace GFGGame
                 RedDotController.Instance.SetComRedDot(_btnLeague, RedDotDataManager.Instance.GetLeagueRed(), "", -8);
 
             if (redPointUpdateFrame == 9) 
-                RedDotController.Instance.SetComRedDot(_ui.m_btnDailyWelfare.target, RedDotDataManager.Instance.GetDailyWelfareRed(), "", -19, 5);
+                RedDotController.Instance.SetComRedDot(_ui.m_comListAd.target, RedDotDataManager.Instance.GetDailyWelfareRed(), "", 0, 5);
 
             if (redPointUpdateFrame == 10)
                 RedDotController.Instance.SetComRedDot(_ui.m_btnActivityLuckyBox.target, RedDotDataManager.Instance.GetMeiRiTeHuiRed()
@@ -1066,9 +1161,14 @@ namespace GFGGame
 
                 }
             }
+            if (redPointUpdateFrame == 24)
+                {
+                    RedDotController.Instance.SetComRedDot(_ui.m_btnMain.target
+                        , MainStoryDataManager.GetChapterRewardStatus(), "icon_tanhao", -40,40);
+                }
 
             redPointUpdateFrame++;
-            if(redPointUpdateFrame > 24)
+            if(redPointUpdateFrame > 25)
             {
                 redPointUpdateFrame = -1;
             }
@@ -1222,11 +1322,19 @@ namespace GFGGame
             if (!GameGlobal.AfterDataInited) return;
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
             //if (!TimeUtil.CheckIsSameTime(lastTime * 1000, TimeHelper.ClientNow()))
+            if (GameGlobal.AutoNewPlayersTips)
+            {
+                if (GameGlobal.NewPlayerOnceTips)
+                {
+                    ViewManager.Show<NewPlayersTipsView>();
+                    return;
+                }
+            }
             if (GameGlobal.AutoSevenDayLoginView)
             {
                 if (ActivityDataManager.Instance.CanGetSevenDayBonus())
                 {
-                    ViewManager.Show<SevenDayLoginView>();
+                    ViewManager.Show<SevenDailyTipsView>();
                     return;
                 }
 
@@ -1268,6 +1376,39 @@ namespace GFGGame
                     return;
                 }
             }
+            //直购648弹窗
+            if (GameGlobal.AutoZGTHTips)
+            {
+                GameGlobal.AutoZGTHTips = false;
+                //判断弹窗时间
+                if (ActivityDataManager.Instance.CheckPearRebateTips(6002))
+                {
+                    ViewManager.Show<ZGTHgiftTipsView>();
+                    return;
+                }
+            }
+            //直购特惠弹窗
+            if (GameGlobal.AutoZGTHDCTips)
+            {
+                GameGlobal.AutoZGTHDCTips = false;
+                //判断弹窗时间
+                if (ActivityDataManager.Instance.CheckPearRebateTips(6001))
+                {
+                    ViewManager.Show<ZGTHgiftDCTipsView>();
+                    return;
+                }
+            }
+            //珍珠赠礼弹窗
+            if (GameGlobal.AutoPearRebateTips)
+            {
+                GameGlobal.AutoPearRebateTips = false;
+                //判断弹窗时间
+                if (ActivityDataManager.Instance.CheckPearRebateTips(6000))
+                {
+                    ViewManager.Show<PearRebateTipsView>();
+                    return;
+                }
+            }
             //if (GameGlobal.AutoSpecialOfferGiftBoxView)
             //{
             //    //List<int> shopListId = new List<int>() { 40012, 40013 };

+ 2 - 0
GameClient/Assets/Game/HotUpdate/Views/Poem/PoemPhotoView.cs

@@ -404,6 +404,8 @@ namespace GFGGame
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
             GuideController.TryGuide(_ui.m_btnback, ConstGuideId.POEM, 2, "");
+            GuideController.TryCompleteGuideIndex(ConstGuideId.POEM, 2);
+            GuideController.TryCompleteGuide(ConstGuideId.POEM, 2);
         }
 
         /// <summary>

+ 1 - 12
GameClient/Assets/Game/HotUpdate/Views/Poem/PoemView.cs

@@ -31,7 +31,6 @@ namespace GFGGame
             _ui.m_btnback.onClick.Add(OnBtnBackClick);
             _ui.m_comphoto.target.onClick.Add(OnComPhotoClick);
             _ui.m_comGallery.target.onClick.Add(OnComGalleryClick);
-            _ui.m_TimeTracing.target.onClick.Add(OnTimeTracingClick);
         }
         protected override void AddEventListener()
         {
@@ -43,12 +42,6 @@ namespace GFGGame
 
             bool isPhotoOpen = FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(PoemPhotoView).Name, false);
             bool isgalleryOpen = FunctionOpenDataManager.Instance.CheckIsFunOpenById(typeof(PoemGalleryView).Name, false);
-            //_ui.m_TimeTracing.target.visible = ActivityDataManager.Instance.GetCurOpenActiveByType(21) == 0 ? false : true;
-            _ui.m_TimeTracing.target.visible = false;
-            if (_ui.m_TimeTracing.target.visible == true)
-            {
-                RedDotController.Instance.SetComRedDot(_ui.m_TimeTracing.target, TimeTracingDataManager.Instance.GetLevelRewardStatus() || TimeTracingDataManager.Instance.GetAllChapterReward());
-            }
             _ui.m_comphoto.m_c1.selectedIndex = isPhotoOpen ? 1 : 0;
             _ui.m_comGallery.m_c1.selectedIndex = isgalleryOpen ? 1 : 0;
             if (isPhotoOpen && isgalleryOpen)
@@ -81,10 +74,6 @@ namespace GFGGame
         {
             ViewManager.Show<PoemGalleryView>();
         }
-        private void OnTimeTracingClick()
-        {
-            ViewManager.Show<TimeTracingShowView>();
-        }
 
         private void CheckGuide(object param)
         {
@@ -102,7 +91,7 @@ namespace GFGGame
         {
             if (!ViewManager.CheckIsTopView(this.viewCom)) return;
             GuideController.TryGuide(_ui.m_comphoto.target, ConstGuideId.POEM, 1, "在“拍照”中保存的图片都会保存到这里。");
-            GuideController.TryGuide(_ui.m_comGallery.target, ConstGuideId.POEM, 3, "根据主题,上传你精心搭配的服饰,可获得玩家的欣赏点赞哦~~");
+            //GuideController.TryGuide(_ui.m_comGallery.target, ConstGuideId.POEM, 3, "根据主题,上传你精心搭配的服饰,可获得玩家的欣赏点赞哦~~");
             GuideController.TryCompleteGuide(ConstGuideId.POEM, 3);
 
         }

+ 2 - 0
GameClient/Assets/Game/HotUpdate/Views/RoleInfo/GMPanelView.cs

@@ -165,6 +165,8 @@ namespace GFGGame
             string messageSuc = string.Format("当前关卡第{0}章第{1}关", _ui.m_ComBtn.m_txtChapter.text,
                 _ui.m_ComBtn.m_txtChapterLv.text);
             GMController.SendGMCommand("chapter " + content, messageSuc).Coroutine();
+            ActivitySProxy.ReqGetNewPlayerBonusStatus().Coroutine();
+            MainStorySProxy.GetStoryBonusDate().Coroutine();
         }
 
         private async void OnClickBtnSkipCheckOpen()

+ 10 - 0
GameClient/Assets/Game/HotUpdate/Views/RoleInfo/RoleInfoView.cs

@@ -51,6 +51,8 @@ namespace GFGGame
             _ui.m_photoList.onClickItem.Add(OnPhotoListItemClick);
             _ui.m_badgeList.itemRenderer = OnRenderBadgeListItem;
 
+            _ui.m_txtVersion.onClick.Add(OnClickGM);
+
         }
 
         protected override void AddEventListener()
@@ -93,6 +95,14 @@ namespace GFGGame
             Hide();
         }
 
+        private void OnClickGM()
+        {
+            if (GameConfig.showGM >= 1)
+            {
+                ViewManager.Show<GMPanelView>();
+            }
+        }
+
         protected override void RemoveEventListener()
         {
             base.RemoveEventListener();

+ 270 - 0
GameClient/Assets/Game/HotUpdate/Views/Store/StoreZGDCView.cs

@@ -0,0 +1,270 @@
+using UI.Store;
+using UI.CommonGame;
+using UI.ActivityMain;
+using FairyGUI;
+using System.Collections.Generic;
+using ET;
+using static GFGGame.ShopSProxy;
+
+namespace GFGGame
+{
+    public class StoreZGDCView : BaseWindow
+    {
+        //直购典藏-商城
+        private UI_StoreZGDCUI _ui;
+        private ValueBarController _valueBarController;
+        private List<ShopCfg> _shopCfgs;
+        private List<int> giftBagList = new List<int>();
+        private int indexSuit = 0;
+        private int indexItem = 0;
+        private int muem2;
+        private List<int> listIndex = new List<int>();
+        private List<int> originalIdList = new List<int>() { 50001, 50002, 50003, 50004 };
+        private Dictionary<int, int> discountDic = new Dictionary<int, int>();
+        public override void Dispose()
+        {
+            if (_valueBarController != null)
+            {
+                _valueBarController.Dispose();
+                _valueBarController = null;
+            }
+            if (_ui != null)
+            {
+                _ui.Dispose();
+            }
+            _ui = null;
+            base.Dispose();
+        }
+
+        protected override void OnInit()
+        {
+            base.OnInit();
+            packageName = UI_StoreZGDCUI.PACKAGE_NAME;
+            _ui = UI_StoreZGDCUI.Create();
+            this.viewCom = _ui.target;
+            isfullScreen = true;
+            this.clickBlankToClose = false;
+            this.bringToFontOnClick = false;
+
+            _valueBarController = new ValueBarController(_ui.m_valueBar);
+            _ui.m_listCom.m_list.itemRenderer = ListItemRender;
+            _ui.m_suitList.itemRenderer = ListItemSuitRender;
+            _ui.m_suitList.SetVirtualAndLoop();
+            _ui.m_suitList.scrollPane.decelerationRate = 0.9f;
+        }
+
+        protected override void AddEventListener()
+        {
+            base.AddEventListener();
+            EventAgent.AddEventListener(ConstMessage.SHOP_BUY, UpdateView);
+            EventAgent.AddEventListener(ConstMessage.NUMERIC_CHANGE, OnNumericChange);
+        }
+
+        protected override void RemoveEventListener()
+        {
+            base.RemoveEventListener();
+            EventAgent.RemoveEventListener(ConstMessage.SHOP_BUY, UpdateView);
+            EventAgent.RemoveEventListener(ConstMessage.NUMERIC_CHANGE, OnNumericChange);
+        }
+
+        protected override void OnShown()
+        {
+            base.OnShown();
+            _valueBarController.OnShown();
+            muem2 = (int)this.viewData;
+            AddgiftBagID();
+            UpdateDic();
+
+            UpdateView();
+            Timers.inst.Add(5, 0, UpdateListSuit);
+            Timers.inst.Add(1, 0, UpdateTime);
+        }
+        protected override void OnHide()
+        {
+            Timers.inst.Remove(UpdateListSuit);
+            Timers.inst.Remove(UpdateTime);
+            giftBagList.Clear();
+            discountDic.Clear();
+            listIndex.Clear();
+            base.OnHide();
+            ShopViewManager.Instance.ClearItemEff();
+            _valueBarController.OnHide();
+        }
+        private async void OnBtnGetClick()
+        {
+        }
+        private void OnClickLeft()
+        {
+            indexSuit--;
+            UpdateView();
+        }
+        private void OnClickRight()
+        {
+            indexSuit++;
+            UpdateView();
+        }
+
+        private void OnNumericChange(EventContext context)
+        {
+        }
+        private void AddgiftBagID()
+        {
+            for(int i=0;i< ActivityOpenCfgArray.Instance.GetCfg(6001).paramsArr.Length;i++)
+            {
+                giftBagList.Add(ActivityOpenCfgArray.Instance.GetCfg(6001).paramsArr[i]);
+            }
+            for (int i = 0; i < ActivityOpenCfgArray.Instance.GetCfg(6002).paramsArr.Length; i++)
+            {
+                giftBagList.Add(ActivityOpenCfgArray.Instance.GetCfg(6002).paramsArr[i]);
+            }
+        }
+        private void UpdateView()
+        {
+            ShopViewManager.Instance.ClearItemEff();
+            _shopCfgs = ShopCfgArray.Instance.GetCfgsBymenu1Andmenu2(102, muem2);
+            _shopCfgs = ShopDataManager.Instance.RemoveNotOpenCfg(_shopCfgs);
+            _shopCfgs = ShopDataManager.Instance.SortShopGoodsCfgs(_shopCfgs);
+            //UpdateShopCfg();
+            _ui.m_listCom.m_list.numItems = _shopCfgs.Count;
+            _ui.m_suitList.numItems = giftBagList.Count;
+
+        }
+
+        private void ListItemRender(int index, GObject obj)
+        {
+            ShopCfg shopCfg = _shopCfgs[index];
+            ShopViewManager.Instance.UptadeItem(obj, shopCfg);
+        }
+        private void ListItemSuitRender(int index, GObject obj)
+        {
+            UI_StoreZGTHitem item = UI_StoreZGTHitem.Proxy(obj);
+            var suitCfg = SuitCfgArray.Instance.GetCfg(EverydaySaleCfgArray.Instance.dataArray[index].SuitShow);
+            ShopCfg shopCfg = ShopCfgArray.Instance.GetCfg(giftBagList[index]);
+            int discount = (int)(((double)shopCfg.originalPrice / (double)shopCfg.configPrice) * 100);
+            item.m_suitIcon.url = string.Format("ui://Store/{0}", suitCfg.res);
+            item.m_txtName.text = suitCfg.name;
+            ////判断是否在折扣时间内,是否显示
+            if (IsDisountTime(EverydaySaleCfgArray.Instance.dataArray[index]))
+            {
+                //不在
+                item.m_DiscountGroud.visible = false;
+                item.m_timeText.visible = false;
+                item.m_btnCharge.GetChild("title").text = string.Format("{0}元/购买", shopCfg.originalPrice.ToString());
+            }
+            else
+            {
+                //在
+                //_ui.m_btnCharge.GetChild("title").text = string.Format("{0}元/购买", shopCfg.configPrice.ToString());
+                item.m_discountText.text = string.Format("{0}", discount.ToString());
+                item.m_DiscountGroud.visible = true;
+                item.m_timeText.visible = true;
+                long endTime = TimeUtil.DateTimeToTimestamp(EverydaySaleCfgArray.Instance.dataArray[index].endTime);
+                var leftTime = endTime - TimeHelper.ServerNow();
+                item.m_timeText.text = TimeUtil.FormattingTimeTo_DDHHmm(leftTime);
+            }
+            if(suitCfg.rarity == 5)
+            {
+                item.m_tyDesc.visible = true;
+            }
+            else
+            {
+                item.m_tyDesc.visible = false;
+            }
+            UI_StoreZGTHitem.ProxyEnd();
+        }
+        private void UpdateListSuit(object param)
+        {
+            int itemIndex = _ui.m_suitList.ChildIndexToItemIndex(0) + 1;
+            indexItem = itemIndex - 1;
+            itemIndex = itemIndex == _ui.m_suitList.numItems ? 0 : itemIndex;
+            _ui.m_suitList.scrollPane.ScrollRight(0.8f, true);
+        }
+        private int GetDiscountTimeID()
+        {
+            //判断当前indexSuit是否在折扣时间内,根据配置表返回不同的直购id
+            return 0;//activityInfo.StartTime <= TimeHelper.ServerNow() && activityInfo.EndTime > TimeHelper.ServerNow();
+        }
+        private bool IsDisountTime(EverydaySaleCfg item)
+        {
+            long endTime;
+            long startTime;
+            endTime = TimeUtil.DateTimeToTimestamp(item.endTime);
+            startTime = TimeUtil.DateTimeToTimestamp(item.openTime);
+            if (startTime <= TimeHelper.ServerNow() && endTime > TimeHelper.ServerNow())
+            {
+                return false;
+            }
+                return true;
+        }
+        private void UpdateTime(object param)
+        {
+            var activityInfo = EverydaySaleCfgArray.Instance.dataArray[indexItem];
+            long endTime = 0;
+            if (activityInfo != null)
+            {
+                endTime = TimeUtil.DateTimeToTimestamp(activityInfo.endTime);
+            }
+            int index = _ui.m_suitList.GetFirstChildInView();
+            GObject itemobj = _ui.m_suitList.GetChildAt(index%3);
+            UI_StoreZGTHitem item = UI_StoreZGTHitem.Proxy(itemobj);
+            var leftTime = endTime - TimeHelper.ServerNow();
+            if (leftTime <= 0)
+            {
+                item.m_timeText.text = "";
+                item.m_DiscountGroud.visible = false;
+            }
+            else
+            {
+                item.m_timeText.text = TimeUtil.FormattingTimeTo_DDHHmm(leftTime);
+            }
+            UI_StoreZGTHitem.ProxyEnd();
+        }
+
+        private void ReturnDiscountTimeSuitIndex()
+        {
+            int count = 0;
+            long endTime;
+            long startTime;
+            foreach (var item in EverydaySaleCfgArray.Instance.dataArray)
+            {
+                endTime = TimeUtil.DateTimeToTimestamp(item.endTime);
+                startTime = TimeUtil.DateTimeToTimestamp(item.openTime);
+                if (startTime <= TimeHelper.ServerNow() && endTime > TimeHelper.ServerNow())
+                {
+                    listIndex.Add(count);
+                }
+                count++;
+            }
+        }
+        private void UpdateDic()
+        {
+           for(int i =0;i<giftBagList.Count; i++)
+            {
+                discountDic.Add(giftBagList[i], originalIdList[i]);
+            }
+        }
+        private void UpdateShopCfg()
+        {
+            long endTime;
+            long startTime;
+            for (int i=0;i < EverydaySaleCfgArray.Instance.dataArray.Length;i++)
+            {
+                EverydaySaleCfg item = EverydaySaleCfgArray.Instance.dataArray[i];
+                endTime = TimeUtil.DateTimeToTimestamp(item.endTime);
+                startTime = TimeUtil.DateTimeToTimestamp(item.openTime);
+                if (startTime > TimeHelper.ServerNow() || endTime < TimeHelper.ServerNow())
+                {
+                    for(int j =0;j<_shopCfgs.Count;j++)
+                    {
+                        if(_shopCfgs[j].id == giftBagList[i])
+                        {
+                            int id = _shopCfgs[j].id;
+                            id = discountDic[id];
+                            _shopCfgs[j] = ShopCfgArray.Instance.GetCfg(id);
+                        }
+                    }
+                }
+            }
+        }
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/Views/Store/StoreZGDCView.cs.meta

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

+ 1 - 0
GameClient/Assets/Game/HotUpdate/Views/TimeTracing/TimeTracingLevelRankView.cs

@@ -29,6 +29,7 @@ namespace GFGGame
             this.viewCom = _ui.target;
             isfullScreen = true;
             modal = true;
+            viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
             _ui.m_btnBack.onClick.Add(OnClickBtnBack);
             _ui.m_c1.onChanged.Add(OnTabChange);
             _ui.m_listRank.SetVirtual();

+ 2 - 1
GameClient/Assets/Game/HotUpdate/Views/TimeTracing/TimeTracingLevelRewardView.cs

@@ -26,8 +26,8 @@ namespace GFGGame
             this.viewCom = _ui.target;
             isfullScreen = true;
             modal = true;
+            viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
 
-            _ui.m_backBtn.onClick.Add(OnClickBtnBack);
             _ui.m_btnGet.onClick.Add(OnBtnGetClcik);
             _ui.m_list.itemRenderer = RenderListItem;
         }
@@ -87,6 +87,7 @@ namespace GFGGame
                 return;
             }
             await TimeTracingSProxy.ReqGetLevelReward(levelID, bonuscfg.id);
+            EventAgent.DispatchEvent(ConstMessage.TIMETRACINGREDUPDATE);
             _ui.m_list.numItems = bonusList.Count; 
         }
         private async void OnBtnGetClcik()

+ 5 - 2
GameClient/Assets/Game/HotUpdate/Views/TimeTracing/TimeTracingLevelView.cs

@@ -112,7 +112,7 @@ namespace GFGGame
                             ItemCfg headBorderCfg = ItemCfgArray.Instance.GetCfg(itemInfo[levelCfg.id].HeadBorderItemId);
                             levelItem.m_player.m_headFrame.url = ResPathUtil.GetHeadBorderPath(headBorderCfg.res);
                             levelItem.m_player.m_head.url = ResPathUtil.GetHeadPath(headCfg.res);
-                            RedDotController.Instance.SetComRedDot(levelItem.target, TimeTracingDataManager.Instance.GetLevelRewardStatus(levelCfg.id), "", -30);
+                            RedDotController.Instance.SetComRedDot(levelItem.target, TimeTracingDataManager.Instance.GetLevelRewardStatus(levelCfg.id), "", -30,10);
                         }
                     }
                     else
@@ -129,7 +129,7 @@ namespace GFGGame
                 if (!InstanceZonesDataManager.CheckLevelPass(levelCfg.id))
                 {
                     //设置为解锁关卡
-                    RedDotController.Instance.SetComRedDot(levelItem.target, TimeTracingDataManager.Instance.GetLevelRewardStatus(levelCfg.id),"",-30);
+                    RedDotController.Instance.SetComRedDot(levelItem.target, TimeTracingDataManager.Instance.GetLevelRewardStatus(levelCfg.id),"",-30,10);
                     MainStoryDataManager.currentLevelCfgId = levelCfg.id;
                     levelItem.m_player.target.visible = false;
                 }
@@ -208,6 +208,8 @@ namespace GFGGame
 
                 //}
                 item.m_c1.selectedIndex = TimeTracingDataManager.Instance.GetChapterRewardIDStatus(datas[i].id, datas[i].paramsArr[0]);
+                item.m_icon.url = ResPathUtil.GetIconPath(ItemCfgArray.Instance.GetCfg(datas[i].bonusArr[0][0]).res, "png");
+                item.m_count.text = datas[i].count.ToString();
                 if (item.target.data == null)
                 {
                     item.target.onClick.Add(OnBtnGetProBonus);
@@ -223,6 +225,7 @@ namespace GFGGame
             CompositebonusCfg compositeCfg = obj.data as CompositebonusCfg;
             if(num < compositeCfg.count || TimeTracingDataManager.Instance.GetChapterRewardIDStatus(compositeCfg.id, compositeCfg.paramsArr[0]) != 1)
             {
+                GoodsItemTipsController.ShowItemTips(compositeCfg.bonusArr[0][0]);
                 return;
             }
             await TimeTracingSProxy.ReqGetSuitReward(compositeCfg.id);

+ 4 - 4
GameClient/Assets/Game/HotUpdate/Views/TimeTracing/TimeTracingShowView.cs

@@ -11,8 +11,8 @@ namespace GFGGame
     public class TimeTracingShowView : BaseWindow
     {
         private UI_TimeTracingShowUI _ui;
-        private List<int> suitIdList = new List<int>() { 201027, 201003, 202006 };
-        private int SuitID;
+        private List<int> suitIdList = new List<int>() { 201030, 201010, 202006 };
+        private int SuitID = 201030;
         private int ChapterID;
         public override void Dispose()
         {
@@ -30,7 +30,6 @@ namespace GFGGame
             _ui.m_btnBack.onClick.Add(OnClickBtnBack);
             _ui.m_challgeBtn.onClick.Add(OnClickChallgeBtn);
             _ui.m_makeSuitBtn.target.onClick.Add(OnClickMakeSuitBtn);
-            _ui.m_showSuitBtn.onClick.Add(OnClickShowSuitBtn);
             _ui.m_switchBtn.target.onClick.Add(OnClickSwitchBtn);
             _ui.m_ruleBtn.onClick.Add(RuleController.ShowRuleView);
             //预加载套装,对于不同suitid
@@ -55,7 +54,7 @@ namespace GFGGame
         protected override void OnShown()
         {
             base.OnShown();
-            _ui.m_bg.url = ResPathUtil.GetBgImgPath("zcjb_gkbj");
+            _ui.m_bg.url = ResPathUtil.GetBgImgPath("lrmj_bj");
             _ui.m_ruleBtn.data = 300029;
             UpdateView();
             RedDotController.Instance.SetComRedDot(_ui.m_switchBtn.target, TimeTracingDataManager.Instance.GetLevelRewardStatus() || TimeTracingDataManager.Instance.GetAllChapterReward(),"",-200,-10);
@@ -76,6 +75,7 @@ namespace GFGGame
         private void UpdateView()
         {
             SuitID = TimeTracingDataManager.SuitID;
+            _ui.m_suitName.text = SuitCfgArray.Instance.GetCfg(SuitID).name;
             ChapterID = TimeTracingDataManager._currentChapterId;
             if (true)
             {

+ 9 - 9
GameClient/Assets/Game/HotUpdate/Views/TimeTracing/TimeTracingSwitchView.cs

@@ -11,7 +11,7 @@ namespace GFGGame
     public class TimeTracingSwitchView : BaseWindow
     {
         private UI_TimeTracingSwitchUI _ui;
-        private List<int> suitIdList = new List<int>() { 202021, 202022, 202023,0};
+        private List<int> suitIdList = new List<int>() { 201030, 201010, 202006, 0};
         private List<int> chapterIdList = new List<int>() { 61001,62002,62003 ,0};
         private List<string> NumStringList = new List<string>() {"", "一", "二", "三", "四", "五" };
         public override void Dispose()
@@ -66,8 +66,8 @@ namespace GFGGame
             if (index != _ui.m_List.numItems - 2)
             {
                 listItem.m_TimeTracingSwitchItm.m_periodsNumText.text = "第" + NumStringList[index] + "期";
-                listItem.m_TimeTracingSwitchItm.m_periodsNameText.text = "不知道";
-                listItem.m_TimeTracingSwitchItm.m_suitIcon.icon = "";
+                listItem.m_TimeTracingSwitchItm.m_periodsNameText.text = "";
+                listItem.m_TimeTracingSwitchItm.m_suitIcon.icon = string.Format("ui://TimeTracing/select{0}",index);
                 listItem.m_TimeTracingSwitchItm.m_waitText.visible = false;
             }
             else
@@ -114,7 +114,7 @@ namespace GFGGame
             }
             else
             {
-                if (chapterID[3] == 1)
+                //if (chapterID[3] == 1)
                 {
                     if(chapterID[0] == _ui.m_List.numItems - 2 || chapterID[1] == 0)
                     {
@@ -125,11 +125,11 @@ namespace GFGGame
                     EventAgent.DispatchEvent(ConstMessage.TIMETRACINGUPDATE);
                     this.Hide();
                 }
-                else
-                {
-                    PromptController.Instance.ShowFloatTextPrompt("需集齐前置套装");
-                    return;
-                }
+                //else
+                //{
+                //    PromptController.Instance.ShowFloatTextPrompt("需集齐前置套装");
+                //    return;
+                //}
             }
 
         }

+ 2 - 2
GameClient/Assets/Game/Launcher/LauncherConfig.cs

@@ -47,7 +47,7 @@ namespace GFGGame
             launcherRootUrl = "http://gfgclient.obs.cn-north-4.myhuaweicloud.com/";
 #if PT_DEV
             //外网dev版本
-            netType = EnumNetType.PUBLIC;
+            netType = EnumNetType.LOCAL;
             cfgName = "cfg_dev";
 #elif PT_TAPTAP
             netType = EnumNetType.PUBLIC;
@@ -68,7 +68,7 @@ namespace GFGGame
 #else
             netType = EnumNetType.LOCAL;
             cfgName = "cfg_local";
-            launcherRootUrl = "http://10.108.64.189:81/";
+            //launcherRootUrl = "http://10.108.64.189:81/";
 #endif
 
             cfgUrl = launcherRootUrl + "platform/{cfgName}.json";

+ 12 - 0
GameClient/Assets/ResIn/Fight/bg_fhl.png.meta

@@ -99,6 +99,18 @@ TextureImporter:
     overridden: 1
     androidETC2FallbackOverride: 0
     forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: Standalone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
   spriteSheet:
     serializedVersion: 2
     sprites: []

+ 12 - 0
GameClient/Assets/ResIn/Fight/fightBg.png.meta

@@ -99,6 +99,18 @@ TextureImporter:
     overridden: 1
     androidETC2FallbackOverride: 0
     forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: Standalone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
   spriteSheet:
     serializedVersion: 2
     sprites: []

+ 12 - 0
GameClient/Assets/ResIn/Fight/jingzhongh_bg.png.meta

@@ -99,6 +99,18 @@ TextureImporter:
     overridden: 1
     androidETC2FallbackOverride: 0
     forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: Standalone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
   spriteSheet:
     serializedVersion: 2
     sprites: []

+ 12 - 0
GameClient/Assets/ResIn/Fight/zd_bj_bja_1.png.meta

@@ -99,6 +99,18 @@ TextureImporter:
     overridden: 1
     androidETC2FallbackOverride: 0
     forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: Standalone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
   spriteSheet:
     serializedVersion: 2
     sprites: []

+ 12 - 0
GameClient/Assets/ResIn/Fight/zd_bj_bja_2.png.meta

@@ -99,6 +99,18 @@ TextureImporter:
     overridden: 1
     androidETC2FallbackOverride: 0
     forceMaximumCompressionQuality_BC6H_BC7: 0
+  - serializedVersion: 3
+    buildTarget: Standalone
+    maxTextureSize: 2048
+    resizeAlgorithm: 0
+    textureFormat: -1
+    textureCompression: 1
+    compressionQuality: 50
+    crunchedCompression: 0
+    allowsAlphaSplitting: 0
+    overridden: 0
+    androidETC2FallbackOverride: 0
+    forceMaximumCompressionQuality_BC6H_BC7: 0
   spriteSheet:
     serializedVersion: 2
     sprites: []

部分文件因为文件数量过多而无法显示