浏览代码

直购特惠补充提交

zhangyuqian 1 年之前
父节点
当前提交
5c9af8fb05
共有 53 个文件被更改,包括 425 次插入158 次删除
  1. 5 2
      GameClient/Assets/Game/HotUpdate/Controller/GameController.cs
  2. 1 0
      GameClient/Assets/Game/HotUpdate/Data/ActivityDataManager.cs
  3. 15 0
      GameClient/Assets/Game/HotUpdate/Data/ShopDataManager.cs
  4. 6 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_PearlRebateTipsUI.cs
  5. 6 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ZGTHgiftDCTipsUI.cs
  6. 6 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityMain/UI_ZGTHgiftTipsUI.cs
  7. 15 12
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic/UI_CardSyntheticUI.cs
  8. 6 3
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingSynthetic/UI_ClothingSyntheticUI.cs
  9. 6 0
      GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/LuckyBox/UI_LuckyBoxUI.cs
  10. 16 0
      GameClient/Assets/Game/HotUpdate/ServerProxy/ActivitySProxy.cs
  11. 22 1
      GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/PearlRebateTipsView.cs
  12. 21 1
      GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/ZGTHgiftDCTipsView.cs
  13. 21 1
      GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/ZGTHgiftTipsView.cs
  14. 38 61
      GameClient/Assets/Game/HotUpdate/Views/Card/CardSyntheticView.cs
  15. 30 1
      GameClient/Assets/Game/HotUpdate/Views/LuckyBox/LuckyBoxView.cs
  16. 5 5
      GameClient/Assets/Game/HotUpdate/Views/MainStory/StoryChapterView.cs
  17. 30 3
      GameClient/Assets/Game/HotUpdate/Views/MainUI/MainUIView.cs
  18. 176 68
      GameClient/Assets/Game/HotUpdate/Views/Store/StoreZGDCView.cs
  19. 二进制
      GameClient/Assets/ResIn/UI/ActivityMain/ActivityMain_atlas0.png
  20. 二进制
      GameClient/Assets/ResIn/UI/ActivityMain/ActivityMain_fui.bytes
  21. 二进制
      GameClient/Assets/ResIn/UI/CardSynthetic/CardSynthetic_fui.bytes
  22. 二进制
      GameClient/Assets/ResIn/UI/CommonGame/CommonGame_atlas0!a.png
  23. 二进制
      GameClient/Assets/ResIn/UI/CommonGame/CommonGame_atlas0.png
  24. 二进制
      GameClient/Assets/ResIn/UI/CommonGame/CommonGame_fui.bytes
  25. 二进制
      GameClient/Assets/ResIn/UI/CreateRole/CreateRole_atlas0!a.png
  26. 二进制
      GameClient/Assets/ResIn/UI/CreateRole/CreateRole_atlas0.png
  27. 二进制
      GameClient/Assets/ResIn/UI/CreateRole/CreateRole_atlas0_1!a.png
  28. 二进制
      GameClient/Assets/ResIn/UI/CreateRole/CreateRole_atlas0_1.png
  29. 二进制
      GameClient/Assets/ResIn/UI/CreateRole/CreateRole_atlas0_2!a.png
  30. 二进制
      GameClient/Assets/ResIn/UI/CreateRole/CreateRole_atlas0_2.png
  31. 二进制
      GameClient/Assets/ResIn/UI/CreateRole/CreateRole_fui.bytes
  32. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0!a.png
  33. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0.png
  34. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_1!a.png
  35. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_1.png
  36. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_2!a.png
  37. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_2.png
  38. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_3!a.png
  39. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_3.png
  40. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_4!a.png
  41. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_4.png
  42. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_5!a.png
  43. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_5.png
  44. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_6!a.png
  45. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_6.png
  46. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_7!a.png
  47. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_7.png
  48. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas10!a.png
  49. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas10.png
  50. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas_duuftf2!a.png
  51. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas_duuftf2.png
  52. 二进制
      GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_fui.bytes
  53. 二进制
      GameClient/Assets/ResIn/UI/TimeTracing/TimeTracing_fui.bytes

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

@@ -195,11 +195,13 @@ namespace GFGGame
                     }
                     else
                     {
-                        ViewManager.Show<StoryChapterView>(MainStoryDataManager.currentChapterCfgId);
-
                         //ViewManager.Show<StoryChapterView>(StudioDataManager.Instance.luckyBoxFilingChapterId, new object[] { typeof(ActivityThemeLuckyBoxView).FullName, this.viewData });
 
                         ViewManager.Show<StoryChapterView>(MainStoryDataManager.currentChapterCfgId);
+                        //if(true)
+                        //{
+                        //    ViewManager.Show<NewRoleGetSuitView>();
+                        //}
                     }
                 }
                 GMController.AddShowGMViewEventListener();
@@ -218,6 +220,7 @@ namespace GFGGame
 
             await ActivitySProxy.ReqGetNewPlayerBonusStatus();
             await ActivitySProxy.GetNewPlayerOnceStatus();
+            await ActivitySProxy.GetTipsStatus();
 
             FieldDataManager.Instance.waitToShowFieldFightEndView = false;
             bool result = await FieldSProxy.ReqFieldInstanceInfos();

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

@@ -325,6 +325,7 @@ namespace GFGGame
         {
             return 0;
         }
+        public Dictionary<long, long> TipsStatusDic = new Dictionary<long, long>();
         //珍珠赠礼是否弹窗
         public bool CheckPearRebateTips(int id)
         {

+ 15 - 0
GameClient/Assets/Game/HotUpdate/Data/ShopDataManager.cs

@@ -120,6 +120,21 @@ namespace GFGGame
             }
             return shopCfgs;
         }
+
+        //移除原价商品
+        public List<ShopCfg> RemoveNotSaleCfg(List<ShopCfg> shop)
+        {
+            List<ShopCfg> shopCfgs = new List<ShopCfg>();
+            for (int i = shop.Count - 1; i >= 0; i--)
+            {
+                if (shop[i].originalId == 0)
+                {
+                    continue;
+                }
+                shopCfgs.Add(shop[i]);
+            }
+            return shopCfgs;
+        }
         //商品排序
         public List<ShopCfg> SortShopGoodsCfgs(List<ShopCfg> shopCfgs)
         {

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

@@ -18,6 +18,8 @@ namespace UI.ActivityMain
         public UI_Button10 m_buyBtn;
         public UI_Button14 m_gotbtn;
         public GLoader m_backBtn;
+        public GImage m_TipImg;
+        public GLoader m_notTips;
         public GGraph m_effectBtn;
         public GGraph m_effectBG;
         public Transition m_t0;
@@ -81,6 +83,8 @@ namespace UI.ActivityMain
             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_TipImg = (GImage)comp.GetChild("TipImg");
+            m_notTips = (GLoader)comp.GetChild("notTips");
             m_effectBtn = (GGraph)comp.GetChild("effectBtn");
             m_effectBG = (GGraph)comp.GetChild("effectBG");
             m_t0 = comp.GetTransition("t0");
@@ -105,6 +109,8 @@ namespace UI.ActivityMain
             m_gotbtn.Dispose();
             m_gotbtn = null;
             m_backBtn = null;
+            m_TipImg = null;
+            m_notTips = null;
             m_effectBtn = null;
             m_effectBG = null;
             m_t0 = null;

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

@@ -15,6 +15,8 @@ namespace UI.ActivityMain
         public GButton m_btnClose;
         public GTextField m_discountText;
         public GGroup m_DiscountGroud;
+        public GImage m_TipImg;
+        public GLoader m_notTips;
         public Transition m_t0;
         public Transition m_t1;
         public Transition m_t4;
@@ -73,6 +75,8 @@ namespace UI.ActivityMain
             m_btnClose = (GButton)comp.GetChild("btnClose");
             m_discountText = (GTextField)comp.GetChild("discountText");
             m_DiscountGroud = (GGroup)comp.GetChild("DiscountGroud");
+            m_TipImg = (GImage)comp.GetChild("TipImg");
+            m_notTips = (GLoader)comp.GetChild("notTips");
             m_t0 = comp.GetTransition("t0");
             m_t1 = comp.GetTransition("t1");
             m_t4 = comp.GetTransition("t4");
@@ -87,6 +91,8 @@ namespace UI.ActivityMain
             m_btnClose = null;
             m_discountText = null;
             m_DiscountGroud = null;
+            m_TipImg = null;
+            m_notTips = null;
             m_t0 = null;
             m_t1 = null;
             m_t4 = null;

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

@@ -11,6 +11,8 @@ namespace UI.ActivityMain
         public GButton m_btnBuy;
         public GButton m_btnClose;
         public GTextField m_timeText;
+        public GImage m_TipImg;
+        public GLoader m_notTips;
         public Transition m_t0;
         public Transition m_t1;
         public Transition m_t4;
@@ -65,6 +67,8 @@ namespace UI.ActivityMain
             m_btnBuy = (GButton)comp.GetChild("btnBuy");
             m_btnClose = (GButton)comp.GetChild("btnClose");
             m_timeText = (GTextField)comp.GetChild("timeText");
+            m_TipImg = (GImage)comp.GetChild("TipImg");
+            m_notTips = (GLoader)comp.GetChild("notTips");
             m_t0 = comp.GetTransition("t0");
             m_t1 = comp.GetTransition("t1");
             m_t4 = comp.GetTransition("t4");
@@ -75,6 +79,8 @@ namespace UI.ActivityMain
             m_btnBuy = null;
             m_btnClose = null;
             m_timeText = null;
+            m_TipImg = null;
+            m_notTips = null;
             m_t0 = null;
             m_t1 = null;
             m_t4 = null;

+ 15 - 12
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CardSynthetic/UI_CardSyntheticUI.cs

@@ -13,16 +13,17 @@ namespace UI.CardSynthetic
         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 GTextField m_txtGong;
+        public GTextField m_txtShang;
+        public GTextField m_txtJue;
+        public GTextField m_txtZhi;
+        public GTextField m_timesText;
         public GButton m_btnBack;
         public GButton m_btnHome;
         public GComponent m_valueBar;
@@ -81,16 +82,17 @@ namespace UI.CardSynthetic
             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_txtGong = (GTextField)comp.GetChild("txtGong");
+            m_txtShang = (GTextField)comp.GetChild("txtShang");
+            m_txtJue = (GTextField)comp.GetChild("txtJue");
+            m_txtZhi = (GTextField)comp.GetChild("txtZhi");
+            m_timesText = (GTextField)comp.GetChild("timesText");
             m_btnBack = (GButton)comp.GetChild("btnBack");
             m_btnHome = (GButton)comp.GetChild("btnHome");
             m_valueBar = (GComponent)comp.GetChild("valueBar");
@@ -106,16 +108,17 @@ namespace UI.CardSynthetic
             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_txtGong = null;
+            m_txtShang = null;
+            m_txtJue = null;
+            m_txtZhi = null;
+            m_timesText = null;
             m_btnBack = null;
             m_btnHome = null;
             m_valueBar = null;

+ 6 - 3
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ClothingSynthetic/UI_ClothingSyntheticUI.cs

@@ -14,14 +14,15 @@ namespace UI.ClothingSynthetic
         public GGraph m_posHelper;
         public UI_CompItemInfo m_compItemInfo;
         public GTextField m_txtSuitName;
-        public GTextField m_txtProgress;
         public GList m_listMaterias;
         public GList m_listClothing;
         public GButton m_btnProduction;
         public GComponent m_comCostCurrency;
+        public GTextField m_txtProgress;
         public GButton m_btnBack;
         public GButton m_btnHome;
         public GComponent m_valueBar;
+        public GLoader m_cardSyntheticBtn;
         public Transition m_hide;
         public Transition m_show;
         public const string URL = "ui://4f294tdkj5391";
@@ -78,14 +79,15 @@ namespace UI.ClothingSynthetic
             m_posHelper = (GGraph)comp.GetChild("posHelper");
             m_compItemInfo = (UI_CompItemInfo)UI_CompItemInfo.Create(comp.GetChild("compItemInfo"));
             m_txtSuitName = (GTextField)comp.GetChild("txtSuitName");
-            m_txtProgress = (GTextField)comp.GetChild("txtProgress");
             m_listMaterias = (GList)comp.GetChild("listMaterias");
             m_listClothing = (GList)comp.GetChild("listClothing");
             m_btnProduction = (GButton)comp.GetChild("btnProduction");
             m_comCostCurrency = (GComponent)comp.GetChild("comCostCurrency");
+            m_txtProgress = (GTextField)comp.GetChild("txtProgress");
             m_btnBack = (GButton)comp.GetChild("btnBack");
             m_btnHome = (GButton)comp.GetChild("btnHome");
             m_valueBar = (GComponent)comp.GetChild("valueBar");
+            m_cardSyntheticBtn = (GLoader)comp.GetChild("cardSyntheticBtn");
             m_hide = comp.GetTransition("hide");
             m_show = comp.GetTransition("show");
         }
@@ -100,14 +102,15 @@ namespace UI.ClothingSynthetic
             m_compItemInfo.Dispose();
             m_compItemInfo = null;
             m_txtSuitName = null;
-            m_txtProgress = null;
             m_listMaterias = null;
             m_listClothing = null;
             m_btnProduction = null;
             m_comCostCurrency = null;
+            m_txtProgress = null;
             m_btnBack = null;
             m_btnHome = null;
             m_valueBar = null;
+            m_cardSyntheticBtn = null;
             m_hide = null;
             m_show = null;
             if(disposeTarget && target != null)

+ 6 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/LuckyBox/UI_LuckyBoxUI.cs

@@ -15,6 +15,8 @@ namespace UI.LuckyBox
         public GGroup m_grpTop;
         public GButton m_btnLeft;
         public GButton m_btnRight;
+        public GGraph m_effectZWH;
+        public GGraph m_effectTWH;
         public const string URL = "ui://drx9d1uswono2q";
         public const string PACKAGE_NAME = "LuckyBox";
         public const string RES_NAME = "LuckyBoxUI";
@@ -70,6 +72,8 @@ namespace UI.LuckyBox
             m_grpTop = (GGroup)comp.GetChild("grpTop");
             m_btnLeft = (GButton)comp.GetChild("btnLeft");
             m_btnRight = (GButton)comp.GetChild("btnRight");
+            m_effectZWH = (GGraph)comp.GetChild("effectZWH");
+            m_effectTWH = (GGraph)comp.GetChild("effectTWH");
         }
         public void Dispose(bool disposeTarget = false)
         {
@@ -81,6 +85,8 @@ namespace UI.LuckyBox
             m_grpTop = null;
             m_btnLeft = null;
             m_btnRight = null;
+            m_effectZWH = null;
+            m_effectTWH = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

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

@@ -375,7 +375,23 @@ namespace GFGGame
             GameGlobal.NewPlayerOnceTips = true;
             return true;
         }
+
+        //弹窗状态设置
+        public static async ETTask SetTipsStatus(long tips,long value,int type = 1)
+        {
+            S2C_UpdateDataRecord response = (S2C_UpdateDataRecord)await MessageHelper.SendToServer(new C2S_UpdateDataRecord() { K = tips,V = value, ResetType = type});
+        }
+        public static async ETTask GetTipsStatus()
+        {
+            S2C_GetDataRecord response = (S2C_GetDataRecord)await MessageHelper.SendToServer(new C2S_GetDataRecord() { });
+            for (int i = 0; i < response.AllKs.Count; i++)
+            {
+                ActivityDataManager.Instance.TipsStatusDic.Add(response.AllKs[i], response.AllVs[i]);
+            }
+        }
     }
+
+
     //新人活动开启状态推送
     public class NewPlayerOpenStatus : AMHandler<S2C_PushNewcomerRewardStatus>
     {

+ 22 - 1
GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/PearlRebateTipsView.cs

@@ -41,6 +41,7 @@ namespace GFGGame
             _ui.m_one.target.onClick.Add(UpdateIndex1);
             _ui.m_two.target.onClick.Add(UpdateIndex2);
             _ui.m_three.target.onClick.Add(UpdateIndex3);
+            _ui.m_notTips.onClick.Add(OnClickTips);
 
             _effectUI1 = EffectUIPool.CreateEffectUI(_ui.m_effectBtn, "ui_Activity", "");
             _effectUI2 = EffectUIPool.CreateEffectUI(_ui.m_effectBG, "ui_Activity", "");
@@ -64,8 +65,16 @@ namespace GFGGame
             UpdateIndex1();
             Timers.inst.Add(1, 0, UpdateTime);
         }
-        protected override void OnHide()
+        protected async override void OnHide()
         {
+            if (_ui.m_TipImg.visible)
+            {
+                await ActivitySProxy.SetTipsStatus(6000, 1, 1);
+            }
+            else
+            {
+                await ActivitySProxy.SetTipsStatus(6000, 0, 1);
+            }
             Timers.inst.Remove(UpdateTime);
             base.OnHide();
         }
@@ -173,6 +182,18 @@ namespace GFGGame
                 }
                 return;
         }
+        private void OnClickTips()
+        {
+            if (_ui.m_TipImg.visible == false)
+            {
+                _ui.m_TipImg.visible = true;
+            }
+            else
+            {
+                _ui.m_TipImg.visible = false;
+            }
+
+        }
         private void OnClickChange()
         {
             this.Hide();

+ 21 - 1
GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/ZGTHgiftDCTipsView.cs

@@ -42,6 +42,7 @@ namespace GFGGame
             _ui.m_Itemlist.itemRenderer = ListItemRender;
             _ui.m_btnCharge.onClick.Add(OnBtnGetClick);
             _ui.m_btnClose.onClick.Add(this.Hide);
+            _ui.m_notTips.onClick.Add(OnClickTips);
         }
 
         protected override void AddEventListener()
@@ -74,8 +75,16 @@ namespace GFGGame
 
             Timers.inst.Add(1, 0, UpdateTime);
         }
-        protected override void OnHide()
+        protected async override void OnHide()
         {
+            if (_ui.m_TipImg.visible)
+            {
+                await ActivitySProxy.SetTipsStatus(6001, 1, 1);
+            }
+            else
+            {
+                await ActivitySProxy.SetTipsStatus(6000, 0, 1);
+            }
             Timers.inst.Remove(UpdateTime);
             base.OnHide();
         }
@@ -85,7 +94,18 @@ namespace GFGGame
             await ReqShopBuy(giftShopId);
             _ui.m_btnCharge.visible = false;
         }
+        private void OnClickTips()
+        {
+            if (_ui.m_TipImg.visible == false)
+            {
+                _ui.m_TipImg.visible = true;
+            }
+            else
+            {
+                _ui.m_TipImg.visible = false;
+            }
 
+        }
         private void OnNumericChange(EventContext context)
         {
         }

+ 21 - 1
GameClient/Assets/Game/HotUpdate/Views/ActivityMainTips/ZGTHgiftTipsView.cs

@@ -39,6 +39,7 @@ namespace GFGGame
 
             _ui.m_btnBuy.onClick.Add(OnBtnGetClick);
             _ui.m_btnClose.onClick.Add(this.Hide);
+            _ui.m_notTips.onClick.Add(OnClickTips);
         }
 
         protected override void AddEventListener()
@@ -90,8 +91,16 @@ namespace GFGGame
 
             Timers.inst.Add(1, 0, UpdateTime);
         }
-        protected override void OnHide()
+        protected async override void OnHide()
         {
+            if(_ui.m_TipImg.visible)
+            {
+                await ActivitySProxy.SetTipsStatus(6002, 1, 1);
+            }
+            else
+            {
+                await ActivitySProxy.SetTipsStatus(6000, 0, 1);
+            }
             Timers.inst.Remove(UpdateTime);
             base.OnHide();
         }
@@ -104,7 +113,18 @@ namespace GFGGame
         {
             _ui.m_btnBuy.visible = false;
         }
+        private void OnClickTips()
+        {
+            if (_ui.m_TipImg.visible == false)
+            {
+                _ui.m_TipImg.visible = true;
+            }
+            else
+            {
+                _ui.m_TipImg.visible = false;
+            }
 
+        }
         private void ListItemRender(int index, GObject obj)
         {
             UI_ZGTHRewardItem item = UI_ZGTHRewardItem.Proxy(obj);

+ 38 - 61
GameClient/Assets/Game/HotUpdate/Views/Card/CardSyntheticView.cs

@@ -14,17 +14,14 @@ 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 List<ItemData> _materiarsOfSelectedItem;
+        private ItemCfg _cardItem;
         private UI_MateriasListItem listTypeItem_CloSynthetic;
         private UI_Component2 _compMover;
 
@@ -37,17 +34,6 @@ namespace GFGGame
                 _valueBarController = null;
             }
 
-            if (_imgSelected != null)
-            {
-                _imgSelected.RemoveFromParent();
-                _imgSelected.Dispose();
-            }
-            if (_dressUpObjUI != null)
-            {
-                _dressUpObjUI.Dispose();
-                _dressUpObjUI = null;
-            }
-
             if (_ui != null)
             {
                 _ui.Dispose();
@@ -69,8 +55,6 @@ namespace GFGGame
 
             _valueBarController = new ValueBarController(_ui.m_valueBar);
 
-            _dressUpObjUI = new DressUpObjUI("SceneDressUpSynthetic");
-
             _ui.m_listMaterias.itemRenderer = RenderListMateriasItem;
             _ui.m_listMaterias.onClickItem.Add(OnClickMateriasItemPlus);
 
@@ -78,7 +62,7 @@ namespace GFGGame
             _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()
         {
@@ -89,18 +73,14 @@ namespace GFGGame
         {
             base.OnShown();
             _cardId = 0;
-            _selectedItemId = 0;
-            _chapterID = 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 ((this.viewData as object[]).Length > 2)
+                //    _chapterID = (int)(this.viewData as object[])[2];
             }
-
-            if (DressUpMenuSuitDataManager.chooseClothing > 0)
-                _selectedItemId = DressUpMenuSuitDataManager.chooseClothing;
+            _cardItem = ItemCfgArray.Instance.GetCfg(_cardId);
 
             _valueBarController.OnShown();
             _ui.m_loaBg2.url = ResPathUtil.GetBgImgPath("hc_bj_1");
@@ -116,9 +96,6 @@ namespace GFGGame
             _valueBarController.OnHide();
             _ui.m_listMaterias.selectedIndex = 0;
             Timers.inst.Remove(CheckGuide);
-            _dressUpObjUI.dressUpObj.TakeOffAll();
-            if (_chapterID > 0)
-                MainStoryDataManager.currentChapterCfgId = _chapterID;
         }
         protected override void RemoveEventListener()
         {
@@ -128,18 +105,29 @@ namespace GFGGame
         private void OnClickBtnBack()
         {
             DressUpMenuSuitDataManager.chooseClothing = 0;
-            ViewManager.GoBackFrom(typeof(ClothingSyntheticView).FullName);
+            ViewManager.GoBackFrom(typeof(CardSyntheticView).FullName);
         }
 
         private async void OnClickBtnProcuction()
         {
-            if (ItemDataManager.GetItemNum(_selectedItemId) > 0)
+            bool isfirst;
+            //这里应该是制作卡牌次数
+            if (ItemDataManager.GetItemNum(_cardId) > 0)
+            {
+                isfirst = false;
+            }
+            else
             {
-                PromptController.Instance.ShowFloatTextPrompt("不能制作已经拥有的物品");
+                isfirst = true;
+            }
+            if (ItemDataManager.GetItemNum(_cardId) >= _cardItem.syntheticTimes)
+            {
+                isfirst = false;
+                PromptController.Instance.ShowFloatTextPrompt("制作已上限");
                 return;
             }
 
-            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(_selectedItemId);
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(_cardId);
             if (itemCfg == null)
             {
                 ET.Log.Error("OnClickBtnProcuction itemCfg is null");
@@ -159,22 +147,19 @@ namespace GFGGame
                 ItemData itemData = materiarsOfSelectedItem[i];
                 if (itemData == null || !ItemUtil.CheckItemEnough(itemData.id, itemData.num, true)) return;
             }
-            bool result = await ClothingSyntheticSProxy.ClothtingSynthetic(_selectedItemId);
+
+            bool result = await ClothingSyntheticSProxy.CardSynthetic(_cardId, isfirst);
             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);
+            UpdateName(_cardItem.name);
+            _ui.m_comImgCard.m_ComCardImgRes.m_loaCard.url = ResPathUtil.GetCardPath(_cardItem.res);
+            _ui.m_timesText.text = string.Format("{0}/{1}", ItemDataManager.GetItemNum(_cardId), _cardItem.syntheticTimes);
             UpdateSelectedItemInfo();
         }
 
@@ -188,7 +173,7 @@ namespace GFGGame
             _ui.m_txtJue.text = "" + itemCfg.score3;
             _ui.m_txtZhi.text = "" + itemCfg.score4;
             //合成显示
-            ItemCfg clothingSyntheticCfg = ItemCfgArray.Instance.GetCfg(_selectedItemId);
+            ItemCfg clothingSyntheticCfg = ItemCfgArray.Instance.GetCfg(_cardId);
             // string costName = ItemUtil.GetItemName(clothingSyntheticCfg.syntheticCostID);
             // _ui.m_txtCost.SetVar("v1", "" + clothingSyntheticCfg.syntheticCostNum).SetVar("v2", costName).FlushVars();
             if (clothingSyntheticCfg.syntheticCostID <= 0)
@@ -202,7 +187,8 @@ namespace GFGGame
 
 
             _ui.m_listMaterias.selectedIndex = 0;
-            _ui.m_btnProduction.grayed = ItemDataManager.GetItemNum(_selectedItemId) > 0;
+            //这里应该是制作卡牌次数
+            _ui.m_btnProduction.grayed = ItemDataManager.GetItemNum(_cardId) > clothingSyntheticCfg.syntheticTimes;
         }
 
         private void UpdateName(string name)
@@ -272,11 +258,6 @@ namespace GFGGame
             {
                 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];
@@ -285,24 +266,20 @@ namespace GFGGame
                 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 };
+            object[] sourceDatas = new object[] { itemData.id, new object[] { typeof(CardSyntheticView).FullName, new object[] { _cardId } }, (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 OnItemNumChanged()
+        {
+            _ui.m_listMaterias.numItems = _materiarsOfSelectedItem.Count;
+            //这里应该是制作卡牌次数
+            _ui.m_btnProduction.grayed = ItemDataManager.GetItemNum(_cardId) > _cardItem.syntheticTimes;
+            _ui.m_timesText.text = string.Format("{0}/{1}", ItemDataManager.GetItemNum(_cardId), _cardItem.syntheticTimes);
+        }
         private void CheckGuide(object param)
         {
             //if (GuideDataManager.IsGuideFinish(ConstGuideId.CLOTHING_SYNTHETIC) <= 0)

+ 30 - 1
GameClient/Assets/Game/HotUpdate/Views/LuckyBox/LuckyBoxView.cs

@@ -23,12 +23,16 @@ namespace GFGGame
         private string activityEndTime = "[2024][2][2][00:00]";
 
         Dictionary<int,GObject> _listActivityBtnObj = new Dictionary<int, GObject>();
+        private List<string> effectNameList = new List<string>() { "CK_ZWH_01", "CK_ZWH_02", "CK_TWH_01", "CK_TWH_02" }; 
 
         private int _activeBoxId = 0;
         private int _curIndex = 0;
         private int _activityId = 0;
         private bool scrollTouch = true;  //左右箭头点击等滑动完成后才可以再次点击
 
+        private EffectUI _effectUI1;
+        private EffectUI _effectUI2;
+
         public override void Dispose()
         {
             // Clear Effect
@@ -36,6 +40,10 @@ namespace GFGGame
             {
                 EffectUIPool.Recycle(v.Value);
             }
+            EffectUIPool.Recycle(_effectUI1);
+            _effectUI1 = null;
+            EffectUIPool.Recycle(_effectUI2);
+            _effectUI2 = null;
 
             _effectUIDic.Clear();
 
@@ -88,6 +96,8 @@ namespace GFGGame
             _ui.m_listBg.SetVirtualAndLoop();  //虚拟循环列表
             _ui.m_listBg.scrollPane.onScrollEnd.Add(OnScrollEnd);
             _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("zx_bg");
+            _effectUI1 = EffectUIPool.CreateEffectUI(_ui.m_effectTWH, "ui_LuckyBox", "CK_TWH_01");
+            _effectUI2 = EffectUIPool.CreateEffectUI(_ui.m_effectZWH, "ui_LuckyBox", "CK_ZWH_01");
             AdaptScreen();
         }
         protected override void AddEventListener()
@@ -332,6 +342,26 @@ namespace GFGGame
             LuckyBoxDataManager.Instance.luckyBoxIndex = _curIndex;
             UpdateFreeInfo();
             UpdateListItemData();
+            UpdateEffect();
+        }
+        private void UpdateEffect()
+        {
+            LuckyBoxCfg luckybox = LuckyBoxCfgArray.Instance.GetCfg(LuckyBoxDataManager.Instance.currentBoxId);
+            if(luckybox.name == "紫薇垣")
+            {
+                _ui.m_effectZWH.visible = true;
+                _ui.m_effectTWH.visible = false;
+            }
+            else if (luckybox.name == "太微垣")
+            {
+                _ui.m_effectZWH.visible = false;
+                _ui.m_effectTWH.visible = true;
+            }
+            else
+            {
+                _ui.m_effectZWH.visible = false;
+                _ui.m_effectTWH.visible = false;
+            }
         }
 
         private void UpdateBtnReward()
@@ -607,7 +637,6 @@ namespace GFGGame
             {
                 _luckyBoxCtrl[key].OnHide();
             }
-
             Timers.inst.Remove(CheckTime);
             Timers.inst.Remove(UpdateTime);
             Timers.inst.Remove(UpdateImitateTime);

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

@@ -9,7 +9,7 @@ using ET;
 namespace GFGGame
 {
     public class StoryChapterView : BaseWindow
-    {
+{
         private UI_StoryChapterUI _ui;
         private int _chapterID;
         private GComponent _compChapter;
@@ -44,13 +44,13 @@ namespace GFGGame
             EffectUIPool.Recycle(_effectUI3);
             _effectUI3 = null;
             EffectUIPool.Recycle(_effectUI4);
-            _effectUI5 = null;
+            _effectUI4 = null;
             EffectUIPool.Recycle(_effectUI5);
-            _effectUI6 = null;
+            _effectUI5 = null;
             EffectUIPool.Recycle(_effectUI6);
-            _effectUI7 = null;
+            _effectUI6 = null;
             EffectUIPool.Recycle(_effectUI7);
-            _effectUI4 = null;
+            _effectUI7 = null;
             if (_comEff != null)
             {
                 _comEff.RemoveFromParent();

+ 30 - 3
GameClient/Assets/Game/HotUpdate/Views/MainUI/MainUIView.cs

@@ -1380,8 +1380,17 @@ namespace GFGGame
             if (GameGlobal.AutoZGTHTips)
             {
                 GameGlobal.AutoZGTHTips = false;
+                long tips;
+                if(!ActivityDataManager.Instance.TipsStatusDic.TryGetValue(6002, out tips))
+                {
+                    if (ActivityDataManager.Instance.CheckPearRebateTips(6002))
+                    {
+                        ViewManager.Show<ZGTHgiftTipsView>();
+                        return;
+                    }
+                }
                 //判断弹窗时间
-                if (ActivityDataManager.Instance.CheckPearRebateTips(6002))
+                if (ActivityDataManager.Instance.CheckPearRebateTips(6002) && tips == 0)
                 {
                     ViewManager.Show<ZGTHgiftTipsView>();
                     return;
@@ -1391,8 +1400,17 @@ namespace GFGGame
             if (GameGlobal.AutoZGTHDCTips)
             {
                 GameGlobal.AutoZGTHDCTips = false;
+                long tips;
+                if (!ActivityDataManager.Instance.TipsStatusDic.TryGetValue(6001, out tips))
+                {
+                    if (ActivityDataManager.Instance.CheckPearRebateTips(6001))
+                    {
+                        ViewManager.Show<ZGTHgiftDCTipsView>();
+                        return;
+                    }
+                }
                 //判断弹窗时间
-                if (ActivityDataManager.Instance.CheckPearRebateTips(6001))
+                if (ActivityDataManager.Instance.CheckPearRebateTips(6001) && tips == 0)
                 {
                     ViewManager.Show<ZGTHgiftDCTipsView>();
                     return;
@@ -1402,8 +1420,17 @@ namespace GFGGame
             if (GameGlobal.AutoPearRebateTips)
             {
                 GameGlobal.AutoPearRebateTips = false;
+                long tips;
+                if (!ActivityDataManager.Instance.TipsStatusDic.TryGetValue(6000, out tips))
+                {
+                    if (ActivityDataManager.Instance.CheckPearRebateTips(6000))
+                    {
+                        ViewManager.Show<PearRebateTipsView>();
+                        return;
+                    }
+                }
                 //判断弹窗时间
-                if (ActivityDataManager.Instance.CheckPearRebateTips(6000))
+                if (ActivityDataManager.Instance.CheckPearRebateTips(6000) && tips == 0)
                 {
                     ViewManager.Show<PearRebateTipsView>();
                     return;

+ 176 - 68
GameClient/Assets/Game/HotUpdate/Views/Store/StoreZGDCView.cs

@@ -19,8 +19,7 @@ namespace GFGGame
         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>();
+        private List<EffectUI> _effectUIs = new List<EffectUI>();
         public override void Dispose()
         {
             if (_valueBarController != null)
@@ -73,36 +72,21 @@ namespace GFGGame
             _valueBarController.OnShown();
             muem2 = (int)this.viewData;
             AddgiftBagID();
-            UpdateDic();
-
+            ReturnDiscountTimeSuitIndex();
             UpdateView();
             Timers.inst.Add(5, 0, UpdateListSuit);
-            Timers.inst.Add(1, 0, UpdateTime);
+            //Timers.inst.Add(1, 0, UpdateTime);
         }
         protected override void OnHide()
         {
             Timers.inst.Remove(UpdateListSuit);
-            Timers.inst.Remove(UpdateTime);
+            //Timers.inst.Remove(UpdateTime);
             giftBagList.Clear();
-            discountDic.Clear();
             listIndex.Clear();
             base.OnHide();
-            ShopViewManager.Instance.ClearItemEff();
+            ClearItemEff();
             _valueBarController.OnHide();
         }
-        private async void OnBtnGetClick()
-        {
-        }
-        private void OnClickLeft()
-        {
-            indexSuit--;
-            UpdateView();
-        }
-        private void OnClickRight()
-        {
-            indexSuit++;
-            UpdateView();
-        }
 
         private void OnNumericChange(EventContext context)
         {
@@ -120,21 +104,109 @@ namespace GFGGame
         }
         private void UpdateView()
         {
-            ShopViewManager.Instance.ClearItemEff();
+            ClearItemEff();
             _shopCfgs = ShopCfgArray.Instance.GetCfgsBymenu1Andmenu2(102, muem2);
             _shopCfgs = ShopDataManager.Instance.RemoveNotOpenCfg(_shopCfgs);
+            _shopCfgs = ShopDataManager.Instance.RemoveNotSaleCfg(_shopCfgs);
             _shopCfgs = ShopDataManager.Instance.SortShopGoodsCfgs(_shopCfgs);
             //UpdateShopCfg();
-            _ui.m_listCom.m_list.numItems = _shopCfgs.Count;
             _ui.m_suitList.numItems = giftBagList.Count;
+            _ui.m_listCom.m_list.numItems = _shopCfgs.Count;
 
         }
 
         private void ListItemRender(int index, GObject obj)
         {
             ShopCfg shopCfg = _shopCfgs[index];
-            ShopViewManager.Instance.UptadeItem(obj, shopCfg);
+            int isBuy;
+            int currentID;
+            int originalID;
+            currentID = shopCfg.id;
+            originalID = shopCfg.id;
+            bool flog = false;
+            foreach (var Id in listIndex)
+            {   
+                if(Id == shopCfg.id)
+                {
+                    flog = true;
+                    break;
+                }
+            }
+            if (!flog)
+            {
+                shopCfg = ShopCfgArray.Instance.GetCfg(_shopCfgs[index].originalId);
+                currentID = shopCfg.id;
+            }
+            UI_ListShopItem item = UI_ListShopItem.Proxy(obj);
+
+            ItemCfg itemCfg = ItemCfgArray.Instance.GetCfg(shopCfg.itemId);
+            item.m_txtName.text = shopCfg.itemName;
+            item.m_icon.url = ResPathUtil.GetIconPath(itemCfg);
+
+            item.m_grpDiscount.visible = shopCfg.Price < shopCfg.originalPrice;
+            if (item.m_grpDiscount.visible)
+            {
+                EffectUI _effectUI = EffectUIPool.CreateEffectUI(item.m_holderfEff, "ui_Small_parts", "store_Value");
+                _effectUIs.Add(_effectUI);
+                item.m_holderfEff.visible = shopCfg.Price < shopCfg.originalPrice;
+            }
+            item.m_txtDesc.text = shopCfg.Price <= 0 ? "" : ShopDataManager.Instance.GetShopGoodsDiscount(shopCfg.id).ToString();
+
+            item.m_txtEndTime.SetVar("value", ShopDataManager.Instance.GetEndTime(shopCfg.id)).FlushVars();
+            item.m_txtEndTime.visible = shopCfg.endTime != "";
+
+            item.m_c2.selectedIndex = ShopDataManager.Instance.GetShopGoodsStateById(shopCfg.id) ? 1 : 0;
+            item.m_txtLock.text = ShopDataManager.Instance.GetShopGoodsStateTips(shopCfg.id);
+
+            int buyNum = ShopDataManager.Instance.GetGoodsBuyNumById(shopCfg.id);
+            item.m_txtLimit.visible = shopCfg.maxBuyNum > 0;
+            item.m_txtLimit.text = string.Format("{0}({1}/{2})", ShopDataManager.Instance.refreshType[shopCfg.refreshType], StringUtil.GetColorText(buyNum.ToString(), "#5A3E16"), shopCfg.maxBuyNum);
+
+            item.m_c1.selectedIndex = shopCfg.maxBuyNum == 0 || buyNum < shopCfg.maxBuyNum ? 0 : 1;
+
+            if (item.m_c1.selectedIndex == 0)//可购买
+            {
+                item.m_btnBuy.m_txtOriginalPrice.text = NumberUtil.ChangeNumberUnit(shopCfg.originalPrice);
+                if (shopCfg.Price > 0 && shopCfg.CostTypeReal != CostType.FREE)//不免费
+                {
+                    item.m_btnBuy.m_grpOriginalPrice.visible = shopCfg.originalPrice > 0 && shopCfg.originalPrice != shopCfg.Price;
+                    item.m_btnBuy.m_loaIcon.visible = true;
+                    item.m_btnBuy.m_txtPrice.text = NumberUtil.ChangeNumberUnit(shopCfg.Price);// cfg.price.ToString();
+
+                    if (shopCfg.CostTypeReal == CostType.RMB)//人民币
+                    {
+                        item.m_btnBuy.m_loaIcon.visible = false;
+                        item.m_btnBuy.m_txtIcon.visible = true;
+                        item.m_btnBuy.m_txtIcon.text = "¥";
+                    }
+                    else//道具
+                    {
+                        ItemCfg costItemCfg = ItemCfgArray.Instance.GetCfg(shopCfg.CostIdReal);
+                        item.m_btnBuy.m_loaIcon.url = ResPathUtil.GetIconPath(costItemCfg);
+                        item.m_btnBuy.m_loaIcon.visible = true;
+                        item.m_btnBuy.m_txtIcon.visible = false;
+                    }
+                }
+                else
+                {
+                    item.m_btnBuy.m_txtIcon.text = "";
+                    item.m_btnBuy.m_loaIcon.visible = false;
+                    item.m_btnBuy.m_grpOriginalPrice.visible = false;
+                    item.m_btnBuy.m_txtPrice.text = "免费";
+                }
+            }
+
+            if (item.target.data == null)
+            {
+                item.target.onClick.Add(OnBtnBugItem);
+            }
+            item.target.data = new List<int> { currentID, originalID };
+            bool isRed = item.m_c1.selectedIndex == 0 && item.m_c2.selectedIndex == 0 && shopCfg.Price == 0;
+
+            RedDotController.Instance.SetComRedDot(item.target, isRed, "", -6, 100);
+            UI_ListShopItem.ProxyEnd();
         }
+
         private void ListItemSuitRender(int index, GObject obj)
         {
             UI_StoreZGTHitem item = UI_StoreZGTHitem.Proxy(obj);
@@ -158,7 +230,16 @@ namespace GFGGame
                 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);
+                long endTime;
+                if (EverydaySaleCfgArray.Instance.dataArray[index].endTime == "" || EverydaySaleCfgArray.Instance.dataArray[index].endTime == null)
+                {
+                    var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(EverydaySaleCfgArray.Instance.dataArray[index].activityId);
+                    endTime = activityInfo.EndTime;
+                }
+                else
+                {
+                    endTime = TimeUtil.DateTimeToTimestamp(EverydaySaleCfgArray.Instance.dataArray[index].endTime);
+                }
                 var leftTime = endTime - TimeHelper.ServerNow();
                 item.m_timeText.text = TimeUtil.FormattingTimeTo_DDHHmm(leftTime);
             }
@@ -172,6 +253,45 @@ namespace GFGGame
             }
             UI_StoreZGTHitem.ProxyEnd();
         }
+        private void OnBtnBugItem(EventContext context)
+        {
+            //idlist:0:当前显示的id,1:折扣id;
+            List<int> idList = (List<int>) (context.sender as GObject).data;
+            ShopCfg cfg = ShopCfgArray.Instance.GetCfg(idList[0]);
+            ShopCfg cfg1 = ShopCfgArray.Instance.GetCfg(idList[1]);
+            bool isSellOutoriginal = true;
+            if (cfg.originalId == 0)
+            {
+                int maxBuyNum = cfg.maxBuyNum;
+                int countBuyNum = ShopDataManager.Instance.GetGoodsBuyNumById(cfg.id) + ShopDataManager.Instance.GetGoodsBuyNumById(cfg1.originalId);
+                isSellOutoriginal = maxBuyNum > 0 && maxBuyNum - countBuyNum <= 0;
+            }
+            else
+            {
+                ShopCfg shopcfg = ShopCfgArray.Instance.GetCfg(idList[0]);
+                isSellOutoriginal = shopcfg.maxBuyNum > 0 && shopcfg.maxBuyNum - ShopDataManager.Instance.GetGoodsBuyNumById(shopcfg.id) <= 0;
+            }
+            if (isSellOutoriginal)
+            {
+                PromptController.Instance.ShowFloatTextPrompt("已售罄");
+                return;
+            }
+            // if (!ShopDataManager.Instance.GetShopGoodsStateById(cfg.id))
+            // {
+            //     PromptController.Instance.ShowFloatTextPrompt(ShopDataManager.Instance.GetShopGoodsStateTips(cfg.id));
+            //     return;
+            // }
+
+            if (cfg.CostTypeReal == CostType.FREE)
+            {
+                ShopSProxy.ReqShopBuy(cfg.id, 1).Coroutine();
+                LogServerHelper.SendPlayParticipationLog((int)PlayParticipationEnum.SHANG_CHENG, 2);
+            }
+            else
+            {
+                ViewManager.Show<ItemExchangeView>(cfg.id);
+            }
+        }
         private void UpdateListSuit(object param)
         {
             int itemIndex = _ui.m_suitList.ChildIndexToItemIndex(0) + 1;
@@ -188,6 +308,10 @@ namespace GFGGame
         {
             long endTime;
             long startTime;
+            if(item.openTime == "" || item.openTime == null)
+            {
+                return ActivityGlobalDataManager.Instance.IsActivityOpen(item.activityId);
+            }
             endTime = TimeUtil.DateTimeToTimestamp(item.endTime);
             startTime = TimeUtil.DateTimeToTimestamp(item.openTime);
             if (startTime <= TimeHelper.ServerNow() && endTime > TimeHelper.ServerNow())
@@ -196,6 +320,28 @@ namespace GFGGame
             }
                 return true;
         }
+        private void ReturnDiscountTimeSuitIndex()
+        {
+            int count = 0;
+            long endTime;
+            long startTime;
+            foreach (var item in EverydaySaleCfgArray.Instance.dataArray)
+            {
+                if(item.openTime == "" || item.openTime == null)
+                {
+                    listIndex.Add(giftBagList[count]);
+                    count++;
+                    break;
+                }
+                endTime = TimeUtil.DateTimeToTimestamp(item.endTime);
+                startTime = TimeUtil.DateTimeToTimestamp(item.openTime);
+                if (startTime <= TimeHelper.ServerNow() && endTime > TimeHelper.ServerNow())
+                {
+                    listIndex.Add(giftBagList[count]);
+                }
+                count++;
+            }
+        }
         private void UpdateTime(object param)
         {
             var activityInfo = EverydaySaleCfgArray.Instance.dataArray[indexItem];
@@ -219,52 +365,14 @@ namespace GFGGame
             }
             UI_StoreZGTHitem.ProxyEnd();
         }
-
-        private void ReturnDiscountTimeSuitIndex()
+        private void ClearItemEff()
         {
-            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++)
+            for (int i = 0; i < _effectUIs.Count; 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);
-                        }
-                    }
-                }
+                EffectUIPool.Recycle(_effectUIs[i]);
+                _effectUIs[i] = null;
             }
+            _effectUIs.Clear();
         }
     }
 }

二进制
GameClient/Assets/ResIn/UI/ActivityMain/ActivityMain_atlas0.png


二进制
GameClient/Assets/ResIn/UI/ActivityMain/ActivityMain_fui.bytes


二进制
GameClient/Assets/ResIn/UI/CardSynthetic/CardSynthetic_fui.bytes


二进制
GameClient/Assets/ResIn/UI/CommonGame/CommonGame_atlas0!a.png


二进制
GameClient/Assets/ResIn/UI/CommonGame/CommonGame_atlas0.png


二进制
GameClient/Assets/ResIn/UI/CommonGame/CommonGame_fui.bytes


二进制
GameClient/Assets/ResIn/UI/CreateRole/CreateRole_atlas0!a.png


二进制
GameClient/Assets/ResIn/UI/CreateRole/CreateRole_atlas0.png


二进制
GameClient/Assets/ResIn/UI/CreateRole/CreateRole_atlas0_1!a.png


二进制
GameClient/Assets/ResIn/UI/CreateRole/CreateRole_atlas0_1.png


二进制
GameClient/Assets/ResIn/UI/CreateRole/CreateRole_atlas0_2!a.png


二进制
GameClient/Assets/ResIn/UI/CreateRole/CreateRole_atlas0_2.png


二进制
GameClient/Assets/ResIn/UI/CreateRole/CreateRole_fui.bytes


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0!a.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_1!a.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_1.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_2!a.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_2.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_3!a.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_3.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_4!a.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_4.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_5!a.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_5.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_6!a.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_6.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_7!a.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas0_7.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas10!a.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas10.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas_duuftf2!a.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_atlas_duuftf2.png


二进制
GameClient/Assets/ResIn/UI/LuckyBox/LuckyBox_fui.bytes


二进制
GameClient/Assets/ResIn/UI/TimeTracing/TimeTracing_fui.bytes