Переглянути джерело

接入元宵活动相关协议

leiyasi 1 рік тому
батько
коміт
cea52529ce

+ 2 - 2
GameClient/Assets/Game/HotUpdate/Data/RedDotDataManager.cs

@@ -1070,8 +1070,8 @@ namespace GFGGame
 
         public bool GetActivityYuanXiaoRed()
         {
-            return false;
-            //return TaskDataManager.Instance.CheckTaskRewardCanGet(TaskFuncType.YuanXiaoActivity);
+            return ActivityGetYuanXiaoDataManager.Instance.HaveNewLevelCanPlay()
+            || TaskDataManager.Instance.CheckTaskRewardCanGet(TaskFuncType.YuanXiaoActivity);
         }
 
         /// <summary>

+ 3 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityGetYuanXiao/UI_ActivityGetYuanXiaoEntryUI.cs

@@ -22,6 +22,7 @@ namespace UI.ActivityGetYuanXiao
         public GButton m_btnBack;
         public GGraph m_btnStart;
         public Transition m_t0;
+        public Transition m_listShow;
         public const string URL = "ui://tguohf7uqkvg4";
         public const string PACKAGE_NAME = "ActivityGetYuanXiao";
         public const string RES_NAME = "ActivityGetYuanXiaoEntryUI";
@@ -84,6 +85,7 @@ namespace UI.ActivityGetYuanXiao
             m_btnBack = (GButton)comp.GetChild("btnBack");
             m_btnStart = (GGraph)comp.GetChild("btnStart");
             m_t0 = comp.GetTransition("t0");
+            m_listShow = comp.GetTransition("listShow");
         }
         public void Dispose(bool disposeTarget = false)
         {
@@ -102,6 +104,7 @@ namespace UI.ActivityGetYuanXiao
             m_btnBack = null;
             m_btnStart = null;
             m_t0 = null;
+            m_listShow = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 1 - 0
GameClient/Assets/Game/HotUpdate/ServerProxy/CommonSProxy.cs

@@ -66,6 +66,7 @@ namespace GFGGame
                     await MiniGameProxy.ReqGetChallengeReward();
                     ActivitySProxy.ReqGetActivitySignInfos().Coroutine();
                     NewYearRedEnvelopeSProxy.ReqGetRedPacketInfo().Coroutine();
+                    ActivityGetYuanXiaoProxy.ReqGetActivityGameInfos().Coroutine();
                     ActivityDataManager.Instance.todayActivityTips = GameGlobal.myNumericComponent.GetAsInt(NumericType.IsPropYchmActivity);
                     ActivityDataManager.Instance.todayMonthlyCardTips = GameGlobal.myNumericComponent.GetAsInt(NumericType.IsPropCzykActivity);
                     EventAgent.DispatchEvent(ConstMessage.RESET_DAILY_DATA);

+ 35 - 0
GameClient/Assets/Game/HotUpdate/Views/ActivityGetYuanXiao/ActivityGetYuanXiaoDataManager.cs

@@ -1,5 +1,7 @@
 using ET;
 using System.Collections;
+using System.Collections.Generic;
+using System.Threading.Tasks;
 using UnityEngine;
 
 namespace GFGGame
@@ -12,5 +14,38 @@ namespace GFGGame
             return activityInfo != null && activityInfo.StartTime <= TimeHelper.ServerNow() &&
                    activityInfo.EndTime > TimeHelper.ServerNow();
         }
+
+        public bool HaveNewLevelCanPlay()
+        {
+            int curLevel = GetCurLevel();
+            if(curLevel == gameinfoList.Count)
+            {
+                return false;
+            }
+
+            long haveNum = ItemDataManager.GetItemNum(PickUpGameArray.Instance.dataArray[curLevel].comsumePassArr[0][0]);
+            bool canPlay = (haveNum >= PickUpGameArray.Instance.dataArray[curLevel].comsumePassArr[0][1]);
+
+            return canPlay;
+        }
+
+        public int GetCurLevel()
+        {
+            //return gameinfoList.Count;
+
+            int i;
+            for (i = 0; i < gameinfoList.Count; i++)
+            {
+                if (!gameinfoList[i].IsCleared)
+                {
+                    return i;
+                }
+            }
+
+            return i;
+        }
+
+
+        public List<GameInfoProto> gameinfoList = new List<GameInfoProto>();
     }
 }

+ 82 - 65
GameClient/Assets/Game/HotUpdate/Views/ActivityGetYuanXiao/ActivityGetYuanXiaoEntryView.cs

@@ -12,7 +12,7 @@ namespace GFGGame
         private UI_ActivityGetYuanXiaoEntryUI _ui;
         private ValueBarController _valueBarController;
         private Dictionary<string, EffectUI> _effectUIDic = new Dictionary<string, EffectUI>();
-
+        private int _curLevel;
 
         public override void Dispose()
         {
@@ -21,6 +21,7 @@ namespace GFGGame
             {
                 EffectUIPool.Recycle(v.Value);
             }
+            _effectUIDic.Clear();
 
             if (_valueBarController != null)
             {
@@ -48,21 +49,12 @@ namespace GFGGame
 
             _valueBarController = new ValueBarController(_ui.m_valueBar);
             _ui.m_list.itemRenderer = ListRenderer;
-            _ui.m_list.onClickItem.Add(OnListItemClick);
             _ui.m_btnStart.onClick.Add(OnBtnStartClick);
             _ui.m_btnTask.onClick.Add(OnBtnTaskClick);
             _ui.m_btnShop.onClick.Add(OnBtnShopClick);
             _ui.m_btnBack.onClick.Add(Hide);
 
-            _effectUIDic.Add("YXJ_bg_tx", EffectUIPool.CreateEffectUI(_ui.m_bgEffect, "ui_Activity", "YXJ_bg_tx"));
-            _effectUIDic.Add("YXJ_Button", EffectUIPool.CreateEffectUI(_ui.m_startBtnEffect, "ui_Activity", "YXJ_Button"));
-            _effectUIDic.Add("YXJ_Middle", EffectUIPool.CreateEffectUI(_ui.m_yuanXiaoEffect, "ui_Activity", "YXJ_Middle"));
-            _effectUIDic.Add("YXJ_Text", EffectUIPool.CreateEffectUI(_ui.m_titleTextEffect, "ui_Activity", "YXJ_Text"));
-            _effectUIDic.Add("YXJ_Open_Down", EffectUIPool.CreateEffectUI(_ui.m_cloudEffect, "ui_Activity", "YXJ_Open_Down"));
-            _effectUIDic.Add("YXJ_Open_Up", EffectUIPool.CreateEffectUI(_ui.m_leafEffect, "ui_Activity", "YXJ_Open_Up"));
-            _effectUIDic.Add("RedPack_doubao_Loop_R", EffectUIPool.CreateEffectUI(_ui.m_doubaoEffect, "ui_Activity", "RedPack_doubao_Loop_R"));
-
-
+            AddEffect();
         }
 
         protected async override void OnShown()
@@ -71,32 +63,40 @@ namespace GFGGame
             _valueBarController.OnShown();
             _valueBarController.UpdateList(new List<int>() { PickUpGameArray.Instance.dataArray[0].comsumePassArr[0][0] });
 
-            //var result = await MiniGameProxy.ReqGetActivityGameInfos(5004);
-            //if (!isShowing || !result)
-            //{
-            //    return;
-            //}
+            _ui.m_list.visible = false;
+            var result = await ActivityGetYuanXiaoProxy.ReqGetActivityGameInfos();
+            if (!isShowing || !result)
+            {
+                return;
+            }
 
-            _ui.m_list.numItems = PickUpGameArray.Instance.dataArray.Length;
-            _ui.m_list.selectedIndex = GetCurLevel();
-            _ui.m_list.ScrollToView(_ui.m_list.selectedIndex);
+            _ui.m_list.visible = true;
+            _ui.m_listShow.Play();
+            _curLevel = ActivityGetYuanXiaoDataManager.Instance.GetCurLevel();
+            _ui.m_list.numItems = ActivityGetYuanXiaoDataManager.Instance.gameinfoList.Count;
+            _ui.m_list.selectedIndex = Mathf.Min(_curLevel, ActivityGetYuanXiaoDataManager.Instance.gameinfoList.Count - 1);
+            AutoLocationCurLevel();
+            UpdateRedDots();
         }
 
         protected override void OnHide()
         {
             base.OnHide();
+            _valueBarController.OnHide();
         }
 
         protected override void AddEventListener()
         {
             base.AddEventListener();
             EventAgent.AddEventListener(ConstMessage.ACTIVITY_GETYUANXIAO_START, StartGame);
+            EventAgent.AddEventListener(ConstMessage.RED_CHANGE, UpdateRedDots);
         }
 
         protected override void RemoveEventListener()
         {
             base.RemoveEventListener();
             EventAgent.RemoveEventListener(ConstMessage.ACTIVITY_GETYUANXIAO_START, StartGame);
+            EventAgent.RemoveEventListener(ConstMessage.RED_CHANGE, UpdateRedDots);
         }
 
         private void ListRenderer(int index, GObject item)
@@ -107,50 +107,33 @@ namespace GFGGame
             level.m_spendIcon.url = ResPathUtil.GetIconPath(ItemCfgArray.Instance.GetCfg(pickUpGame.comsumePassArr[0][0]).res, "png");
             level.m_iconLevel.url = string.Format("ui://ActivityGetYuanXiao/yx_xg_{0}", index % 4 + 1);
             level.m_num.text = pickUpGame.comsumePassArr[0][1].ToString();
-            level.m_c1.selectedIndex = 0;
-
-            //level.m_c1.selectedIndex = MiniGameDateManager.Instance.gameinfoList[index].IsUnlock ? 0 : 1;
-            UI_level.ProxyEnd();
-        }
-
-        private void OnListItemClick(EventContext eventContext)
-        {
-            //GObject gObject = (GObject)eventContext.sender;
-            //int index = (int)gObject.data;
-            //UI_level level = UI_level.Proxy(gObject);
-            
-            //UI_level.ProxyEnd();
-        }
 
-        // 获取当前达到的关卡
-        private int GetCurLevel()
-        {
-            return 0;
-
-            int i;
-            for (i = 0; i < MiniGameDateManager.Instance.gameinfoList.Count; i++)
+            int stateIndex = 0;
+            if (index > _curLevel)
             {
-                if (!MiniGameDateManager.Instance.gameinfoList[i].IsCleared)
-                {
-                    return i;
-                }
+                stateIndex = 1;
             }
+            else if(index < _curLevel)
+            {
+                stateIndex = 2;
+            }
+            level.m_c1.selectedIndex = stateIndex;
 
-            return i - 1;
+            UI_level.ProxyEnd();
         }
 
         private void OnBtnStartClick()
         {
-            //if (!MiniGameDateManager.Instance.gameinfoList[_ui.m_list.selectedIndex].IsUnlock)
-            //{
-            //    PromptController.Instance.ShowFloatTextPrompt("关卡未解锁");
-            //    return;
-            //}
-            //if (MiniGameDateManager.Instance.gameinfoList[_ui.m_list.selectedIndex].IsCleared)
-            //{
-            //    PromptController.Instance.ShowFloatTextPrompt("关卡已通过");
-            //    return;
-            //}
+            if (_ui.m_list.selectedIndex > _curLevel)
+            {
+                PromptController.Instance.ShowFloatTextPrompt("关卡未解锁");
+                return;
+            }
+            if (_ui.m_list.selectedIndex < _curLevel)
+            {
+                PromptController.Instance.ShowFloatTextPrompt("关卡已通过");
+                return;
+            }
 
             PickUpGame cfg = PickUpGameArray.Instance.dataArray[_ui.m_list.selectedIndex];
             ViewManager.Show<ActivityGetYuanXiaoTargetView>(cfg);
@@ -158,18 +141,17 @@ namespace GFGGame
 
         private async void StartGame()
         {
-            //int activityID = ActivityDataManager.Instance.GetCurOpenActiveByType(12);
-            //if(activityID == 0)
-            //{
-            //    return;
-            //}
+            int activityID = ActivityDataManager.Instance.GetCurOpenActiveByType(ActivityType.YuanXiao);
+            if (activityID == 0)
+            {
+                return;
+            }
 
             PickUpGame cfg = PickUpGameArray.Instance.dataArray[_ui.m_list.selectedIndex];
-            //var result = await MiniGameProxy.ReqMiniGameStart(cfg.id, cfg.type, activityID);
-            //if (!result || !isShowing) return;
+            var result = await MiniGameProxy.ReqMiniGameStart(cfg.id, cfg.type, activityID);
+            if (!result || !isShowing) return;
 
-            //ViewManager.Show<ActivityGetYuanXiaoView>(new object[] { cfg, activityID });
-            ViewManager.Show<ActivityGetYuanXiaoView>(new object[] { cfg, 0 });
+            ViewManager.Show<ActivityGetYuanXiaoView>(new object[] { cfg, activityID });
         }
 
         private void OnBtnShopClick()
@@ -179,7 +161,7 @@ namespace GFGGame
 
         private void OnBtnTaskClick()
         {
-            int activityID = ActivityDataManager.Instance.GetCurOpenActiveByType(12);
+            int activityID = ActivityDataManager.Instance.GetCurOpenActiveByType(ActivityType.YuanXiao);
             if (activityID == 0)
             {
                 return;
@@ -187,5 +169,40 @@ namespace GFGGame
             ViewManager.Show<ActivityGetYuanXiaoTaskView>(activityID);
         }
 
+        private void UpdateRedDots()
+        {
+            bool canPlay = ActivityGetYuanXiaoDataManager.Instance.HaveNewLevelCanPlay();
+
+            for (int i = 0; i < _ui.m_list.numChildren; i++)
+            {
+                if (i == _curLevel)
+                {
+                    RedDotController.Instance.SetComRedDot(_ui.m_list.GetChildAt(i).asCom, canPlay, "", -21, 29);
+                }
+                else
+                {
+                    RedDotController.Instance.SetComRedDot(_ui.m_list.GetChildAt(i).asCom, false);
+                }
+            }
+
+            RedDotController.Instance.SetComRedDot(_ui.m_btnTask, 
+                TaskDataManager.Instance.CheckTaskRewardCanGet(TaskFuncType.YuanXiaoActivity), "", -25, 20);
+        }
+
+        private void AddEffect()
+        {
+            _effectUIDic.Add("YXJ_bg_tx", EffectUIPool.CreateEffectUI(_ui.m_bgEffect, "ui_Activity", "YXJ_bg_tx"));
+            _effectUIDic.Add("YXJ_Button", EffectUIPool.CreateEffectUI(_ui.m_startBtnEffect, "ui_Activity", "YXJ_Button"));
+            _effectUIDic.Add("YXJ_Middle", EffectUIPool.CreateEffectUI(_ui.m_yuanXiaoEffect, "ui_Activity", "YXJ_Middle"));
+            _effectUIDic.Add("YXJ_Text", EffectUIPool.CreateEffectUI(_ui.m_titleTextEffect, "ui_Activity", "YXJ_Text"));
+            _effectUIDic.Add("YXJ_Open_Down", EffectUIPool.CreateEffectUI(_ui.m_cloudEffect, "ui_Activity", "YXJ_Open_Down"));
+            _effectUIDic.Add("YXJ_Open_Up", EffectUIPool.CreateEffectUI(_ui.m_leafEffect, "ui_Activity", "YXJ_Open_Up"));
+            _effectUIDic.Add("RedPack_doubao_Loop_R", EffectUIPool.CreateEffectUI(_ui.m_doubaoEffect, "ui_Activity", "RedPack_doubao_Loop_R"));
+        }
+
+        private void AutoLocationCurLevel()
+        {
+            _ui.m_list.ScrollToView(Mathf.Min(_curLevel, ActivityGetYuanXiaoDataManager.Instance.gameinfoList.Count - 1));
+        }
     }
 }

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

@@ -17,6 +17,7 @@ namespace GFGGame
             {
                 EffectUIPool.Recycle(v.Value);
             }
+            _effectUIDic.Clear();
 
             if (_ui != null)
             {

+ 21 - 0
GameClient/Assets/Game/HotUpdate/Views/ActivityGetYuanXiao/ActivityGetYuanXiaoProxy.cs

@@ -0,0 +1,21 @@
+using ET;
+using System.Collections;
+using UnityEngine;
+
+namespace GFGGame
+{
+    public class ActivityGetYuanXiaoProxy
+    {
+        public static async ETTask<bool> ReqGetActivityGameInfos()
+        {
+            int activityId = ActivityDataManager.Instance.GetCurOpenActiveByType(ActivityType.YuanXiao);
+            if (activityId <= 0)
+                return false;
+
+            var response = (S2C_GetActivityGameInfos)await MessageHelper.SendToServer(new C2S_GetActivityGameInfos { ActivityId = activityId });
+            if (!(response is { Error: ErrorCode.ERR_Success })) return false;
+            ActivityGetYuanXiaoDataManager.Instance.gameinfoList = response.GameInfoList;
+            return true;
+        }
+    }
+}

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

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

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

@@ -39,6 +39,7 @@ namespace GFGGame
             {
                 EffectUIPool.Recycle(v.Value);
             }
+            _effectUIDic.Clear();
 
             if (_ui != null)
             {

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

@@ -29,6 +29,7 @@ namespace GFGGame
             {
                 EffectUIPool.Recycle(v.Value);
             }
+            _effectUIDic.Clear();
 
             if (_ui != null)
             {
@@ -49,10 +50,8 @@ namespace GFGGame
             _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("hd_yx_bg_2");
             _ui.m_collectList.itemRenderer = CollectListRenderer;
             _ui.m_btnBack.onClick.Add(OnBtnBack);
-            _effectUIDic.Add("YXJ_Catch", EffectUIPool.CreateEffectUI(_ui.m_catcher.m_getEffect, "ui_Activity", "YXJ_Catch"));
-            _effectUIDic.Add("YXJ_text_start", EffectUIPool.CreateEffectUI(_ui.m_startEffect, "ui_Activity", "YXJ_text_start"));
-            _effectUIDic.Add("YXJ_gameing_bg_tx", EffectUIPool.CreateEffectUI(_ui.m_bgEffect, "ui_Activity", "YXJ_gameing_bg_tx"));
 
+            AddEffect();
         }
 
         protected override void OnShown()
@@ -93,7 +92,7 @@ namespace GFGGame
         /// 初始化元宵的FGUI组件
         /// </summary>
         /// <returns></returns>
-        YuanXiaoItem InitItemUICom()
+        YuanXiaoItem InitYuanXiaoItemUICom()
         {
             GComponent gcom = UIPackage.CreateObject("ActivityGetYuanXiao", "YuanXiaoItem").asCom;
             _ui.m_YuanXiaoParent.target.AddChild(gcom);
@@ -117,19 +116,19 @@ namespace GFGGame
         /// </summary>
         /// <param name="type"></param>
         /// <returns></returns>
-        public YuanXiaoItem Get(int type)
+        public YuanXiaoItem GetYuanXiaoItem(int type)
         {
             YuanXiaoItem item = items.Find(x => x.GetVisible() == false);
             if (item == null)
             {
-                item = InitItemUICom();
+                item = InitYuanXiaoItemUICom();
             }
             item.Init(type);
 
             return item;
         }
 
-        public void Restore(YuanXiaoItem item)
+        public void RestoreYuanXiaoItem(YuanXiaoItem item)
         {
             item.SetVisible(false);
         }
@@ -152,14 +151,14 @@ namespace GFGGame
             {
                 PickUpCfg pickUpCfg = PickUpCfgArray.Instance.GetCfgsByid(_cfg.resArr[0])[_cfg.resIdArr[i] - 1];
                 float time = pickUpCfg.speed * 1f / 1000;
-                YuanXiaoItem item = Get(_cfg.resIdArr[i]);
+                YuanXiaoItem item = GetYuanXiaoItem(_cfg.resIdArr[i]);
                 items.Add(item);
                 int score = pickUpCfg.score;
                 item.SetScore(score);
                 Vector3 startPos = _ui.target.GetChild("start" + roadIndexs[i]).position;
                 Vector3 endPos = startPos;
                 endPos.y = _ui.m_end0.y;
-                item.Move(startPos, endPos, time, () => Restore(item));
+                item.Move(startPos, endPos, time, () => RestoreYuanXiaoItem(item));
             }
 
         }
@@ -195,7 +194,7 @@ namespace GFGGame
         public void GetYuanXiao(YuanXiaoItem item)
         {
             // 回收组件
-            Restore(item);
+            RestoreYuanXiaoItem(item);
 
             if (_countTime == 0)
             {
@@ -271,40 +270,43 @@ namespace GFGGame
             if (_countTime < 0)
             {
                 Timers.inst.Remove(UpdateTime);
-                GameEnd();
-            }
-        }
-
-        private async void GameEnd()
-        {
-            //_ui.m_catcher.target.draggable = false;
-            _ui.m_catcher.target.visible = false;
-            HideGameView();
 
-            bool win = true;
-            if (_ui.m_c1.selectedIndex == 0)
-            {
-                foreach (var v in _collectDict)
+                bool win = true;
+                if (_ui.m_c1.selectedIndex == 0)
                 {
-                    if (v.Value > 0)
+                    foreach (var v in _collectDict)
                     {
-                        win = false;
-                        break;
+                        if (v.Value > 0)
+                        {
+                            win = false;
+                            break;
+                        }
                     }
                 }
-            }
-            else
-            {
-                if (_score < _cfg.targetScore)
+                else
                 {
-                    win = false;
+                    if (_score < _cfg.targetScore)
+                    {
+                        win = false;
+                    }
                 }
+
+                GameEnd(win);
             }
+        }
+
+        private async void GameEnd(bool win)
+        {
+            //_ui.m_catcher.target.draggable = false;
+
+            // 游戏结束时隐藏catcher,同时也作为游戏结束的标志
+            _ui.m_catcher.target.visible = false;
+            HideGameView();
 
-            //ViewManager.Show<ModalStatusView>("加载中...");
-            //// 请求游戏结束协议
-            //await MiniGameProxy.ReqMiniGameEnd(_cfg.id, _cfg.type, 0, win, _activityID, false);
-            //ViewManager.Hide<ModalStatusView>();
+            ViewManager.Show<ModalStatusView>("加载中...");
+            // 请求游戏结束协议
+            await MiniGameProxy.ReqMiniGameEnd(_cfg.id, _cfg.type, 0, win, _activityID, false);
+            ViewManager.Hide<ModalStatusView>();
 
             if (win)
             {
@@ -362,6 +364,10 @@ namespace GFGGame
         private void UpdateScore()
         {
             _ui.m_progress.SetVar("cur", _score.ToString()).SetVar("target", _cfg.targetScore.ToString()).FlushVars();
+            if (_ui.m_catcher.target.visible && _score >= _cfg.targetScore)
+            {
+                GameEnd(true);
+            }
         }
 
         private void UpdateCollectProgress(int collectType)
@@ -376,6 +382,19 @@ namespace GFGGame
                 --_collectDict[collectType];
             }
             _ui.m_collectList.numItems = _cfg.targetIdArr.Length;
+
+            foreach (var v in _collectDict)
+            {
+                if (v.Value > 0)
+                {
+                    return;
+                }
+            }
+
+            if(_ui.m_catcher.target.visible)
+            {
+                GameEnd(true);
+            }
         }
 
         private void CollectListRenderer(int index, GObject item)
@@ -454,6 +473,10 @@ namespace GFGGame
             }
         }
 
+        /// <summary>
+        /// 计时器,每隔一段时间创建掉落的元宵
+        /// </summary>
+        /// <param name="param"></param>
         private void UpdateGame(object param)
         {
             if (_gamePause)
@@ -467,5 +490,12 @@ namespace GFGGame
                 _timer = 0;
             }
         }
+
+        private void AddEffect()
+        {
+            _effectUIDic.Add("YXJ_Catch", EffectUIPool.CreateEffectUI(_ui.m_catcher.m_getEffect, "ui_Activity", "YXJ_Catch"));
+            _effectUIDic.Add("YXJ_text_start", EffectUIPool.CreateEffectUI(_ui.m_startEffect, "ui_Activity", "YXJ_text_start"));
+            _effectUIDic.Add("YXJ_gameing_bg_tx", EffectUIPool.CreateEffectUI(_ui.m_bgEffect, "ui_Activity", "YXJ_gameing_bg_tx"));
+        }
     }
 }

+ 8 - 5
GameClient/Assets/Game/HotUpdate/Views/MainUI/MainUIView.cs

@@ -273,7 +273,11 @@ namespace GFGGame
                 RefreshBtnNewYearRedEnvelope();
             }
 
-            RefreshBtnYuanXiaoActivity();
+            result = await ActivityGetYuanXiaoProxy.ReqGetActivityGameInfos();
+            if (result)
+            {
+                RefreshBtnYuanXiaoActivity();
+            }
         }
 
         private void RefreshBtnNewYearRedEnvelope()
@@ -284,8 +288,7 @@ namespace GFGGame
 
         private void RefreshBtnYuanXiaoActivity()
         {
-            //_ui.m_btnGetYuanXiao.target.visible = ActivityGetYuanXiaoDataManager.Instance.CheckOpen();
-            _ui.m_btnGetYuanXiao.target.visible = true;
+            _ui.m_btnGetYuanXiao.target.visible = ActivityGetYuanXiaoDataManager.Instance.CheckOpen();
         }
 
         private void AddEffect()
@@ -1014,8 +1017,8 @@ namespace GFGGame
             {
                 if (redPointUpdateFrame == 22)
                 {
-                    //RedDotController.Instance.SetComRedDot(_ui.m_btnGetYuanXiao.target
-                    //    , RedDotDataManager.Instance.GetActivityYuanXiaoRed(), "", 0, 0);
+                    RedDotController.Instance.SetComRedDot(_ui.m_btnGetYuanXiao.target
+                        , RedDotDataManager.Instance.GetActivityYuanXiaoRed(), "", 0, 0);
 
                 }
             }

BIN
GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0!a.png


BIN
GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_atlas0.png


BIN
GameClient/Assets/ResIn/UI/ActivityGetYuanXiao/ActivityGetYuanXiao_fui.bytes