Browse Source

七日活动加特效

huangxiaoyue 1 year ago
parent
commit
0bba9a75b1

+ 3 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/ActivityDay7/UI_ExpProcessItem.cs

@@ -14,6 +14,7 @@ namespace UI.ActivityDay7
         public GTextField m_Num;
         public GTextField m_Score;
         public GImage m_Get;
+        public GGraph m_holderfEff;
         public const string URL = "ui://kupdwln7bhmmi";
         public const string PACKAGE_NAME = "ActivityDay7";
         public const string RES_NAME = "ExpProcessItem";
@@ -68,6 +69,7 @@ namespace UI.ActivityDay7
             m_Num = (GTextField)comp.GetChild("Num");
             m_Score = (GTextField)comp.GetChild("Score");
             m_Get = (GImage)comp.GetChild("Get");
+            m_holderfEff = (GGraph)comp.GetChild("holderfEff");
         }
         public void Dispose(bool disposeTarget = false)
         {
@@ -78,6 +80,7 @@ namespace UI.ActivityDay7
             m_Num = null;
             m_Score = null;
             m_Get = null;
+            m_holderfEff = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 3 - 0
GameClient/Assets/Game/HotUpdate/FairyGUI/GenCode/CommonGame/UI_TaskListItem.cs

@@ -17,6 +17,7 @@ namespace UI.CommonGame
         public UI_Button22 m_ComeBt;
         public UI_Button22 m_GetRewardBt1;
         public GProgressBar m_taskBar;
+        public GGraph m_holderfTaskEff;
         public const string URL = "ui://eg2y0ldplh8v5";
         public const string PACKAGE_NAME = "CommonGame";
         public const string RES_NAME = "TaskListItem";
@@ -74,6 +75,7 @@ namespace UI.CommonGame
             m_ComeBt = (UI_Button22)UI_Button22.Create(comp.GetChild("ComeBt"));
             m_GetRewardBt1 = (UI_Button22)UI_Button22.Create(comp.GetChild("GetRewardBt1"));
             m_taskBar = (GProgressBar)comp.GetChild("taskBar");
+            m_holderfTaskEff = (GGraph)comp.GetChild("holderfTaskEff");
         }
         public void Dispose(bool disposeTarget = false)
         {
@@ -90,6 +92,7 @@ namespace UI.CommonGame
             m_GetRewardBt1.Dispose();
             m_GetRewardBt1 = null;
             m_taskBar = null;
+            m_holderfTaskEff = null;
             if(disposeTarget && target != null)
             {
                 target.RemoveFromParent();

+ 37 - 2
GameClient/Assets/Game/HotUpdate/Views/ActivityDay7/ActivityDay7View.cs

@@ -21,7 +21,9 @@ namespace GFGGame
 
         //选中的天数index 天数=index+1
         private int onClickDayIndex;
-
+        private List<EffectUI> _effectUIs = new List<EffectUI>();
+        private List<EffectUI> _effectTaskUIs = new List<EffectUI>();
+        
         public override void Dispose()
         {
             if (_ui != null)
@@ -70,6 +72,8 @@ namespace GFGGame
         public override void Hide()
         {
             Timers.inst.Remove(UpdateTime);
+            ClearScoreItemEff();
+            ClearTaskItemEff();
             base.Hide();
         }
 
@@ -166,6 +170,7 @@ namespace GFGGame
 
         private void SetTasks()
         {
+            ClearTaskItemEff();
             var activity7DaysTaskCfg = Activity7DaysTaskCfgArray.Instance.GetCfg(onClickDayIndex + 1);
             var taskIdArr = activity7DaysTaskCfg.taskIdArr;
             //排序根据领取状态
@@ -203,6 +208,10 @@ namespace GFGGame
             {
                 item.m_listTaskReward.itemRenderer = ListTaskRewardItemRender;
             }
+            if (item.m_c1.selectedIndex == 1){
+                EffectUI _effectUI = EffectUIPool.CreateEffectUI(item.m_holderfTaskEff, "ui_Small_parts", "store_button_public");
+                _effectTaskUIs.Add(_effectUI);
+            }
             item.m_listTaskReward.data = TaskDataManager.Instance.GetReward(taskCfg);
             item.m_listTaskReward.numItems = TaskDataManager.Instance.GetReward(taskCfg).Length;
             RedDotController.Instance.SetComRedDot(item.m_GetRewardBt.target, item.m_c1.selectedIndex == 1);
@@ -234,6 +243,7 @@ namespace GFGGame
         //设置积分列表
         private void SetScoreList()
         {
+            ClearScoreItemEff();
             //7日活动配置
             activity7DaysCfgs = Activity7DaysCfgArray.Instance.dataArray;
             var maxCfg = activity7DaysCfgs[activity7DaysCfgs.Length - 1];
@@ -242,6 +252,7 @@ namespace GFGGame
             var pos = _ui.m_StartIndex.position;
             var endX = _ui.m_EndIndex.position.x;
             _ui.m_ExpProcess.max = maxScore;
+            var score = ActivityDay7DataManager.Instance.GetScore();
             //循环设置UI
             foreach (var cfg in activity7DaysCfgs)
             {
@@ -259,6 +270,10 @@ namespace GFGGame
                 item.m_loaIcon.url = string.IsNullOrEmpty(itemCfg.res) ? "" : ResPathUtil.GetIconPath(itemCfg);
                 item.m_Num.text = cfgBonusArr[0][1].ToString();
                 item.m_c1.selectedIndex = cfg.id == maxCfgID ? 1 : 0;
+                //if (item.m_c2.selectedIndex == 0 && score >= cfgScore) { 
+                //    var _effectUI = EffectUIPool.CreateEffectUI(item.m_holderfEff, "ui_Small_parts", "store_NotClaimed_circle");
+                //    _effectUIs.Add(_effectUI);
+                //}
                 item.target.data = cfg;
                 item.target.onClick.Add(OnClickReward);
                 UI_ExpProcess.ProxyEnd();
@@ -266,6 +281,26 @@ namespace GFGGame
             FreshGetStatus();
         }
 
+        public void ClearScoreItemEff()
+        {
+            for (int i = 0; i < _effectUIs.Count; i++)
+            {
+                EffectUIPool.Recycle(_effectUIs[i]);
+                _effectUIs[i] = null;
+            }
+            _effectUIs.Clear();
+        }
+
+        public void ClearTaskItemEff()
+        {
+            for (int i = 0; i < _effectTaskUIs.Count; i++)
+            {
+                EffectUIPool.Recycle(_effectTaskUIs[i]);
+                _effectTaskUIs[i] = null;
+            }
+            _effectTaskUIs.Clear();
+        }
+        
         //设置天数列表
         private void SetDayList()
         {
@@ -286,7 +321,7 @@ namespace GFGGame
                 item.m_c2.selectedIndex = state ? 1 : 0;
                 RedDotController.Instance.SetComRedDot(item.target,
                     ActivityDay7DataManager.Instance.CheckActivityDay7RewardCanGet(cfgID),"",-90);
-                UI_ExpProcessItem.ProxyEnd();   
+                UI_ExpProcessItem.ProxyEnd();
             });
         }
 

BIN
GameClient/Assets/ResIn/UI/ActivityDay7/ActivityDay7_fui.bytes


BIN
GameClient/Assets/ResIn/UI/CommonGame/CommonGame_fui.bytes