Browse Source

圣兵铭文羁绊

zouweichen 1 week ago
parent
commit
e7d7835051
18 changed files with 297 additions and 47 deletions
  1. 25 0
      Assets/Scripts/Business/Runtime/Data/Epigraph/EpigraphData.cs
  2. 13 8
      Assets/Scripts/Business/Runtime/Data/Partners/PartnersData.cs
  3. 12 0
      Assets/Scripts/Business/Runtime/Data/Partners/PartnersService.cs
  4. 8 0
      Assets/Scripts/Business/Runtime/Event/EventDefine.cs
  5. 38 8
      Assets/Scripts/Business/Runtime/FGUI/Partner/BookAddDetailPanel/PartnerBookAddDetailPanelCtrl.cs
  6. 1 1
      Assets/Scripts/Business/Runtime/FGUI/Partner/BookAttrTextItem/PartnerBookAttrTextItemCtrl.cs
  7. 6 1
      Assets/Scripts/Business/Runtime/FGUI/Partner/BookAttrTextItem/PartnerBookAttrTextItemView.ListItem.cs
  8. 42 1
      Assets/Scripts/Business/Runtime/FGUI/Partner/BookDetailListItem/PartnerBookDetailListItemCtrl.cs
  9. 58 5
      Assets/Scripts/Business/Runtime/FGUI/Partner/EpiBookDetailPanel/PartnerEpiBookDetailPanelCtrl.cs
  10. 4 2
      Assets/Scripts/Business/Runtime/FGUI/Partner/EpiBookPanel/PartnerEpiBookPanelCtrl.cs
  11. 59 7
      Assets/Scripts/Business/Runtime/FGUI/Partner/PartnerBookDetailPanel/PartnerPartnerBookDetailPanelCtrl.cs
  12. 4 1
      Assets/Scripts/Business/Runtime/FGUI/Partner/PartnerBookPanel/PartnerPartnerBookPanelCtrl.cs
  13. 6 1
      Assets/Scripts/Business/Runtime/Network/Controllers/ActMingwenJibanPushCtrl.cs
  14. 2 2
      Assets/Scripts/Business/Runtime/Network/Controllers/ActShengBingPushCtrl.cs
  15. 1 1
      Assets/Scripts/Business/Runtime/Network/Controllers/ActShengbingJibanPushCtrl.cs
  16. 3 1
      Assets/Scripts/Business/Runtime/Network/Controllers/ShengbingUnlockJibanAllResponseCtrl.cs
  17. 1 0
      Assets/Scripts/Business/Runtime/Network/Controllers/ShengbingUnlockJibanResponseCtrl.cs
  18. 14 8
      fl-fgui-project/assets/Partner/Book/BookAddDetailPanel.xml

+ 25 - 0
Assets/Scripts/Business/Runtime/Data/Epigraph/EpigraphData.cs

@@ -10,6 +10,7 @@ namespace FL.Data
 {
     public class EpigraphData : DataSingleton<EpigraphData>, IDisposable
     {
+        #region 铭文库
         private Dictionary<int, EpigraphAttributes> _epiMap = new();
         private Dictionary<long, EpigraphAttributes> _epiUIDMap = new();
         public List<EpigraphAttributes> EpiList
@@ -94,7 +95,31 @@ namespace FL.Data
                 _epiUIDMap.Add(epiAttr.UID, epiAttr);
             }
         }
+        #endregion
+        #region 羁绊
+        public readonly Dictionary<int, bool> JibanMap = new Dictionary<int, bool>();
 
+        public void ClearJibanActive()
+        {
+            JibanMap.Clear();
+        }
+
+        public void SetJibanActiveState(int jibanId, int level)
+        {
+            var id = 100000 + jibanId * 1000 + level;
+            if (JibanMap.ContainsKey(jibanId))
+            {
+                JibanMap.Remove(id);
+            }
+            JibanMap.Add(id, true);
+        }
+
+        public bool GetJibaIsActive(int jibanId, int level)
+        {
+            var id = 100000 + jibanId * 1000 + level;
+            return JibanMap.GetValueOrDefault(id, false);
+        }
+        #endregion
         /// <summary>
         /// 获取铭文当前的阶级
         /// </summary>

+ 13 - 8
Assets/Scripts/Business/Runtime/Data/Partners/PartnersData.cs

@@ -61,11 +61,12 @@ namespace FL.Data
         public Dictionary<int, int> UpSbPosMap { get; private set; } = new();
         public Dictionary<long, int> UpSbUIDPosMap { get; private set; } = new();
         public Dictionary<int, int> UpSbMap { get; private set; } = new();
+
         public void ClearSbUpMap()
         {
             UpSbMap.Clear();
-
         }
+
         public void UpdateUpSbPosMap()
         {
             UpSbUIDPosMap.Clear();
@@ -298,23 +299,27 @@ namespace FL.Data
         }
         #endregion
         #region 羁绊
-        private Dictionary<int, bool> _map = new Dictionary<int, bool>();
+        public readonly Dictionary<int, bool> JibanMap = new Dictionary<int, bool>();
 
-        public void ClearJibanRwd()
+        public void ClearJibanActive()
         {
-            _map.Clear();
+            JibanMap.Clear();
         }
 
-        public void SetJibanRwdState(int jibanId, int level)
+        public void SetJibanActiveState(int jibanId, int level)
         {
             var id = 100000 + jibanId * 1000 + level;
-            _map.Add(id, true);
+            if (JibanMap.ContainsKey(jibanId))
+            {
+                JibanMap.Remove(id);
+            }
+            JibanMap.Add(id, true);
         }
 
-        public bool GetJibanRwdIsGot(int jibanId, int level)
+        public bool GetJibaIsActive(int jibanId, int level)
         {
             var id = 100000 + jibanId * 1000 + level;
-            return _map.GetValueOrDefault(id, false);
+            return JibanMap.GetValueOrDefault(id, false);
         }
         #endregion
         /// <summary>

+ 12 - 0
Assets/Scripts/Business/Runtime/Data/Partners/PartnersService.cs

@@ -159,6 +159,18 @@ namespace FL.Data
             NetModule.Request(param);
         }
 
+        public void RequestJibanRwdGet(int rwdId)
+        {
+            var param = new ShengbingUnlockJibanRequest() { jiban = rwdId };
+            NetModule.Request(param);
+        }
+
+        public void RequestJibanRwdGetAll(int collectId)
+        {
+            var param = new ShengbingUnlockJibanAllRequest() { collectId = collectId };
+            NetModule.Request(param);
+        }
+
         public void OpenUpPartnerMode(int id)
         {
             PartnersData.Instance.UpModeSelect = id;

+ 8 - 0
Assets/Scripts/Business/Runtime/Event/EventDefine.cs

@@ -182,6 +182,14 @@
         /// 上阵界面的圣兵选择
         /// </summary>
         PartnerUpSelect,
+        /// <summary>
+        /// 领取羁绊奖励
+        /// </summary>
+        PartnerJibanRwdGet,
+        /// <summary>
+        /// 一键领取羁绊奖励
+        /// </summary>
+        PartnerJibanRwdGetAll,
         #endregion
         #region Toasts Tips 3400 - 3499
         ShowTips = 3400,

+ 38 - 8
Assets/Scripts/Business/Runtime/FGUI/Partner/BookAddDetailPanel/PartnerBookAddDetailPanelCtrl.cs

@@ -4,7 +4,10 @@
 /// 该脚本由模板创建
 /// created by cb 2024
 
+using System.Collections.Generic;
 using FairyGUI;
+using FL.Data;
+using XGame.Database;
 using XGame.Framework.UI;
 
 namespace FL.FGUI
@@ -18,21 +21,48 @@ namespace FL.FGUI
         protected override void OnEnable(object intent)
         {
             AddUIListenres();
+            _type = (int)intent;
         }
+
         protected override void OnDisable()
         {
             RemoveUIListenres();
         }
-        #region UI事件
-        private void AddUIListenres()
-        {
 
-        }
-        private void RemoveUIListenres()
-        {
+        #region UI事件
+        private void AddUIListenres() { }
 
-        }
+        private void RemoveUIListenres() { }
 
         #endregion
+        private int _type;
+
+        private void ShowUI()
+        {
+            var addMap = new Dictionary<int, int>();
+            foreach (var item in PartnersData.Instance.JibanMap)
+            {
+                var table = collect_rewardTableRepo.Get(item.Key);
+                if (table == null)
+                    continue;
+                var collectTable = collectTableRepo.Get(table.CollectId);
+                XGame.Framework.Assert.IsNotNull(collectTable, $"羁绊不存在,id{table.CollectId}");
+                if (collectTable.Type != _type) continue;
+                //for(int i=0;i < table.Attribute.Length, i += 2)
+                //{
+                //    if (addMap.TryGetValue(table.Attribute[i], out var add))
+                //    {
+                //        addMap.Remove(table.Attribute[i]);
+                //    }
+                //    addMap.Add(table.Attribute[i], add + table.Attribute[i+1]);
+                //}
+            }
+            var list = new List<PartnerBookAttrTextParam>();
+            foreach (var item in addMap)
+            {
+                list.Add(new PartnerBookAttrTextParam() { AttrId = item.Key, Val = item.Value });
+            }
+            VM.List.BindDatas(list);
+        }
     }
-}
+}

+ 1 - 1
Assets/Scripts/Business/Runtime/FGUI/Partner/BookAttrTextItem/PartnerBookAttrTextItemCtrl.cs

@@ -35,7 +35,7 @@ namespace FL.FGUI
         }
 
         #endregion
-        public void OnRefresh(int index, int id)
+        public void OnRefresh(int index, PartnerBookAttrTextParam data)
         {
 
         }

+ 6 - 1
Assets/Scripts/Business/Runtime/FGUI/Partner/BookAttrTextItem/PartnerBookAttrTextItemView.ListItem.cs

@@ -14,7 +14,12 @@ namespace FL.FGUI
         void IGListItemHandle.OnRefresh(int index, object data)
         {
             ItemIndex = index;
-            Ctrl.OnRefresh(index, (int)data);
+            Ctrl.OnRefresh(index, data as PartnerBookAttrTextParam);
         }
     }
+    public class PartnerBookAttrTextParam
+    {
+        public int AttrId;
+        public int Val;
+    }
 }

+ 42 - 1
Assets/Scripts/Business/Runtime/FGUI/Partner/BookDetailListItem/PartnerBookDetailListItemCtrl.cs

@@ -6,6 +6,7 @@
 
 using System.Collections.Generic;
 using FairyGUI;
+using FL.Data;
 using FL.Data.Items;
 using XGame.Database;
 using XGame.Framework.UI;
@@ -43,12 +44,17 @@ namespace FL.FGUI
 
         private void OnClickGotoBtn(EventContext context) { }
 
-        private void OnClickGetBtn(EventContext context) { }
+        private void OnClickGetBtn(EventContext context)
+        {
+            PartnersService.Instance.RequestJibanRwdGet(_id);
+        }
 
         #endregion
+        private int _id;
 
         public void OnRefresh(int index, collect_rewardTable table)
         {
+            _id = table.Id;
             VM.DescLabel.text = table.Name;
             var item = new ItemBase();
             item.Init(table.Reward[0], table.Reward[1]);
@@ -65,6 +71,41 @@ namespace FL.FGUI
                 );
             }
             VM.List.BindDatas(list);
+            var collect = collectTableRepo.Get(table.CollectId);
+            XGame.Framework.Assert.IsNotNull(collect);
+            var starLv = 0;
+            foreach (var id in collect.Param)
+            {
+                if (
+                    collect.Type == 1
+                    && PartnersData.Instance.TryGetPartnerAttrByTableId(id, out var attr)
+                )
+                {
+                    starLv += attr.RisingStarLv;
+                }
+                else if (
+                    collect.Type == 2
+                    && EpigraphData.Instance.TryGetEpigraphAttrByTableId(id, out var epi)
+                )
+                {
+                    starLv += epi.StarLv;
+                }
+            }
+            if (starLv >= table.Unlock)
+            {
+                if (PartnersData.Instance.GetJibaIsActive(table.CollectId, table.Level))
+                {
+                    VM.State.selectedIndex = 2;
+                }
+                else
+                {
+                    VM.State.selectedIndex = 1;
+                }
+            }
+            else
+            {
+                VM.State.selectedIndex = 0;
+            }
         }
     }
 }

+ 58 - 5
Assets/Scripts/Business/Runtime/FGUI/Partner/EpiBookDetailPanel/PartnerEpiBookDetailPanelCtrl.cs

@@ -6,6 +6,7 @@
 
 using System.Collections.Generic;
 using FairyGUI;
+using FL.Data;
 using XGame.Database;
 using XGame.Framework.UI;
 
@@ -17,10 +18,6 @@ namespace FL.FGUI
     /// <typeparam name=""></typeparam>
     public partial class PartnerEpiBookDetailPanelCtrl : UIController<PartnerEpiBookDetailPanelVM>
     {
-        private bool _initView = false;
-        private int _curId;
-        private List<int> _list;
-
         protected override void OnEnable(object intent)
         {
             _curId = (int)intent;
@@ -40,6 +37,8 @@ namespace FL.FGUI
             VM.LeftBtn.onClick.Add(OnClickLeftBtn);
             VM.RightBtn.onClick.Add(OnClickRightBtn);
             VM.GetBtn.onClick.Add(OnClickGetBtn);
+            EventSingle.Instance.AddListener(EventDefine.PartnerJibanRwdGet, OnRwdGet);
+            EventSingle.Instance.AddListener(EventDefine.PartnerJibanRwdGetAll, OnRwdGet);
         }
 
         private void RemoveUIListenres()
@@ -47,6 +46,13 @@ namespace FL.FGUI
             VM.LeftBtn.onClick.Remove(OnClickLeftBtn);
             VM.RightBtn.onClick.Remove(OnClickRightBtn);
             VM.GetBtn.onClick.Remove(OnClickGetBtn);
+            EventSingle.Instance.RemoveListener(EventDefine.PartnerJibanRwdGet, OnRwdGet);
+            EventSingle.Instance.RemoveListener(EventDefine.PartnerJibanRwdGetAll, OnRwdGet);
+        }
+
+        private void OnRwdGet(int eventId, object args)
+        {
+            UpdateList();
         }
 
         private void OnClickLeftBtn(EventContext context)
@@ -59,9 +65,51 @@ namespace FL.FGUI
             SelectOffset(1);
         }
 
-        private void OnClickGetBtn(EventContext context) { }
+        private void OnClickGetBtn(EventContext context)
+        {
+            var collectTable = collectTableRepo.Get(_curId);
+            var starLv = 0;
+            foreach (var id in collectTable.Param)
+            {
+                if (
+                    collectTable.Type == 1
+                    && PartnersData.Instance.TryGetPartnerAttrByTableId(id, out var attr)
+                )
+                {
+                    starLv += attr.RisingStarLv;
+                }
+                else if (
+                    collectTable.Type == 2
+                    && EpigraphData.Instance.TryGetEpigraphAttrByTableId(id, out var epi)
+                )
+                {
+                    starLv += epi.StarLv;
+                }
+            }
+            var rwdList = collect_rewardTableRepo.GetCollectRwdList(_curId);
+            var canGet = false;
+            foreach (var item in rwdList)
+            {
+                if (
+                    starLv > item.Unlock
+                    && !PartnersData.Instance.GetJibaIsActive(item.CollectId, item.Level)
+                )
+                {
+                    canGet = true;
+                    break;
+                }
+            }
+            if (canGet)
+            {
+                PartnersService.Instance.RequestJibanRwdGetAll(_curId);
+            }
+        }
 
         #endregion
+        private bool _initView = false;
+        private int _curId;
+        private List<int> _list;
+
         private void InitView()
         {
             if (_initView)
@@ -84,6 +132,11 @@ namespace FL.FGUI
             XGame.Framework.Assert.IsNotNull(table, $"羁绊表不存在,id:{_curId}");
             VM.List.BindDatas(table.Param);
             VM.NameLabel.text = table.Name;
+            UpdateList();
+        }
+
+        private void UpdateList()
+        {
             var list = collect_rewardTableRepo.GetCollectRwdList(_curId);
             VM.RwdList.BindDatas(list);
         }

+ 4 - 2
Assets/Scripts/Business/Runtime/FGUI/Partner/EpiBookPanel/PartnerEpiBookPanelCtrl.cs

@@ -1,4 +1,3 @@
-
 /// #pkgName FGUI包名
 /// #panelName UIPanel名字
 /// #UIName = $"{#pkgName}{#panelName}" UIKey名字
@@ -39,7 +38,10 @@ namespace FL.FGUI
             VM.TotalAddBtn.onClick.Remove(OnClickTotalAddBtn);
         }
 
-        private void OnClickTotalAddBtn(EventContext context) { }
+        private void OnClickTotalAddBtn()
+        {
+            Context.UI.OpenAsync(UIKeys.PartnerBookAddDetailPanel, 2);
+        }
 
         #endregion
         #region 属性

+ 59 - 7
Assets/Scripts/Business/Runtime/FGUI/Partner/PartnerBookDetailPanel/PartnerPartnerBookDetailPanelCtrl.cs

@@ -1,4 +1,3 @@
-
 /// #pkgName FGUI包名
 /// #panelName UIPanel名字
 /// #UIName = $"{#pkgName}{#panelName}" UIKey名字
@@ -7,6 +6,7 @@
 
 using System.Collections.Generic;
 using FairyGUI;
+using FL.Data;
 using XGame.Database;
 using XGame.Framework.UI;
 
@@ -19,10 +19,6 @@ namespace FL.FGUI
     public partial class PartnerPartnerBookDetailPanelCtrl
         : UIController<PartnerPartnerBookDetailPanelVM>
     {
-        private bool _initView = false;
-        private int _curId;
-        private List<int> _list;
-
         protected override void OnEnable(object intent)
         {
             _curId = (int)intent;
@@ -42,6 +38,8 @@ namespace FL.FGUI
             VM.LeftBtn.onClick.Add(OnClickLeftBtn);
             VM.RightBtn.onClick.Add(OnClickRightBtn);
             VM.GetBtn.onClick.Add(OnClickGetBtn);
+            EventSingle.Instance.AddListener(EventDefine.PartnerJibanRwdGet, OnRwdGet);
+            EventSingle.Instance.AddListener(EventDefine.PartnerJibanRwdGetAll, OnRwdGet);
         }
 
         private void RemoveUIListenres()
@@ -49,6 +47,13 @@ namespace FL.FGUI
             VM.LeftBtn.onClick.Remove(OnClickLeftBtn);
             VM.RightBtn.onClick.Remove(OnClickRightBtn);
             VM.GetBtn.onClick.Remove(OnClickGetBtn);
+            EventSingle.Instance.RemoveListener(EventDefine.PartnerJibanRwdGet, OnRwdGet);
+            EventSingle.Instance.RemoveListener(EventDefine.PartnerJibanRwdGetAll, OnRwdGet);
+        }
+
+        private void OnRwdGet(int eventId, object args)
+        {
+            UpdateList();
         }
 
         private void OnClickLeftBtn(EventContext context)
@@ -61,9 +66,51 @@ namespace FL.FGUI
             SelectOffset(1);
         }
 
-        private void OnClickGetBtn(EventContext context) { }
+        private void OnClickGetBtn(EventContext context)
+        {
+            var collectTable = collectTableRepo.Get(_curId);
+            var starLv = 0;
+            foreach (var id in collectTable.Param)
+            {
+                if (
+                    collectTable.Type == 1
+                    && PartnersData.Instance.TryGetPartnerAttrByTableId(id, out var attr)
+                )
+                {
+                    starLv += attr.RisingStarLv;
+                }
+                else if (
+                    collectTable.Type == 2
+                    && EpigraphData.Instance.TryGetEpigraphAttrByTableId(id, out var epi)
+                )
+                {
+                    starLv += epi.StarLv;
+                }
+            }
+            var rwdList = collect_rewardTableRepo.GetCollectRwdList(_curId);
+            var canGet = false;
+            foreach (var item in rwdList)
+            {
+                if (
+                    starLv > item.Unlock
+                    && !PartnersData.Instance.GetJibaIsActive(item.CollectId, item.Level)
+                )
+                {
+                    canGet = true;
+                    break;
+                }
+            }
+            if (canGet)
+            {
+                PartnersService.Instance.RequestJibanRwdGetAll(_curId);
+            }
+        }
 
         #endregion
+        private bool _initView = false;
+        private int _curId;
+        private List<int> _list;
+
         private void InitView()
         {
             if (_initView)
@@ -71,7 +118,7 @@ namespace FL.FGUI
             _initView = true;
             VM.List.ListType = EGListType.None;
             VM.RwdList.ListType = EGListType.Virtual;
-            var tableList = collectTableRepo.GetAllPartnerCollectList();
+            var tableList = collectTableRepo.GetAllEpiCollectList();
             var list = new List<int>();
             foreach (var item in tableList)
             {
@@ -86,6 +133,11 @@ namespace FL.FGUI
             XGame.Framework.Assert.IsNotNull(table, $"羁绊表不存在,id:{_curId}");
             VM.List.BindDatas(table.Param);
             VM.NameLabel.text = table.Name;
+            UpdateList();
+        }
+
+        private void UpdateList()
+        {
             var list = collect_rewardTableRepo.GetCollectRwdList(_curId);
             VM.RwdList.BindDatas(list);
         }

+ 4 - 1
Assets/Scripts/Business/Runtime/FGUI/Partner/PartnerBookPanel/PartnerPartnerBookPanelCtrl.cs

@@ -39,7 +39,10 @@ namespace FL.FGUI
             VM.TotalAddBtn.onClick.Remove(OnClickTotalAddBtn);
         }
 
-        private void OnClickTotalAddBtn(EventContext context) { }
+        private void OnClickTotalAddBtn()
+        {
+            Context.UI.OpenAsync(UIKeys.PartnerBookAddDetailPanel, 2);
+        }
 
         #endregion
         #region 属性

+ 6 - 1
Assets/Scripts/Business/Runtime/Network/Controllers/ActMingwenJibanPushCtrl.cs

@@ -1,3 +1,4 @@
+using FL.Data;
 using XGame.Framework.Network;
 
 namespace FL.Network
@@ -5,7 +6,11 @@ namespace FL.Network
     public class ActMingwenJibanPushCtrl : MsgController<ActMingwenJibanPush>
     {
         protected override void OnProcess(ActMingwenJibanPush message, object context)
-        {
+        {
+            foreach (var id in message.jiban)
+            {
+                PartnersData.Instance.SetJibanActiveState(id.jbId, id.level);
+            }
         }
     }
 }

+ 2 - 2
Assets/Scripts/Business/Runtime/Network/Controllers/ActShengBingPushCtrl.cs

@@ -7,10 +7,10 @@ namespace FL.Network
     {
         protected override void OnProcess(ActShengBingPush message, object context)
         {
-            PartnersData.Instance.ClearJibanRwd();
+            PartnersData.Instance.ClearJibanActive();
             foreach (var jiban in message.jiban)
             {
-                PartnersData.Instance.SetJibanRwdState(jiban.jbId, jiban.level);
+                PartnersData.Instance.SetJibanActiveState(jiban.jbId, jiban.level);
             }
             PartnersData.Instance.UsePlanId = message.useSuit;
             PartnersService.Instance.InitPartnerMap(message.shengbing);

+ 1 - 1
Assets/Scripts/Business/Runtime/Network/Controllers/ActShengbingJibanPushCtrl.cs

@@ -9,7 +9,7 @@ namespace FL.Network
         {
             foreach (var id in message.jiban)
             {
-                PartnersData.Instance.SetJibanRwdState(id.jbId, id.level);
+                PartnersData.Instance.SetJibanActiveState(id.jbId, id.level);
             }
         }
     }

+ 3 - 1
Assets/Scripts/Business/Runtime/Network/Controllers/ShengbingUnlockJibanAllResponseCtrl.cs

@@ -2,10 +2,12 @@ using XGame.Framework.Network;
 
 namespace FL.Network
 {
-    public class ShengbingUnlockJibanAllResponseCtrl : MsgController<ShengbingUnlockJibanAllResponse>
+    public class ShengbingUnlockJibanAllResponseCtrl
+        : MsgController<ShengbingUnlockJibanAllResponse>
     {
         protected override void OnProcess(ShengbingUnlockJibanAllResponse message, object context)
         {
+            EventSingle.Instance.Notify(EventDefine.PartnerJibanRwdGetAll);
         }
     }
 }

+ 1 - 0
Assets/Scripts/Business/Runtime/Network/Controllers/ShengbingUnlockJibanResponseCtrl.cs

@@ -6,6 +6,7 @@ namespace FL.Network
     {
         protected override void OnProcess(ShengbingUnlockJibanResponse message, object context)
         {
+            EventSingle.Instance.Notify(EventDefine.PartnerJibanRwdGet);
         }
     }
 }

+ 14 - 8
fl-fgui-project/assets/Partner/Book/BookAddDetailPanel.xml

@@ -1,13 +1,16 @@
 <?xml version="1.0" encoding="utf-8"?>
 <component size="756,1344" designImage="ui://2981jnh7kzs94o" designImageAlpha="72" designImageLayer="1">
   <displayList>
-    <component id="n0_ifoa" name="PopWin2" src="jofv3j" fileName="Components/PopWin/PopWin2.xml" pkg="gt6q23qw" xy="12,378" size="729,464">
+    <component id="n11_li13" name="MaskBg" src="c95i2g" fileName="BackGroundNested.xml" pkg="gt6q23qw" xy="378,672" pivot="0.5,0.5" anchor="true" size="1000,2000">
+      <relation target="" sidePair="middle-middle"/>
+    </component>
+    <component id="n0_ifoa" name="PopWin2" src="jofv3j" fileName="Components/PopWin/PopWin2.xml" pkg="gt6q23qw" xy="12,378" size="729,464" group="n10_li13">
       <Label title="总属性详情"/>
     </component>
-    <image id="n3_ifoa" name="n3" src="rwcw4" fileName="images/pop/tanchuangdiban2.png" pkg="gt6q23qw" xy="31,452" size="693,327"/>
-    <image id="n4_ifoa" name="n4" src="rwcw5" fileName="images/pop/tanchuangdiban3.png" pkg="gt6q23qw" xy="48,517" size="658,241"/>
-    <text id="n5_ifoa" name="n5" xy="298,471" pivot="0.5,0.5" size="160,36" fontSize="26" color="#49517e" align="center" text="累计拥有效果"/>
-    <list id="n1_ifoa" name="List" xy="72,525" size="621,217" overflow="scroll" lineGap="-3" defaultItem="ui://2981jnh7ifoa5c" autoItemSize="false" autoClearItems="true" scrollItemToViewOnClick="false">
+    <image id="n3_ifoa" name="n3" src="rwcw4" fileName="images/pop/tanchuangdiban2.png" pkg="gt6q23qw" xy="31,452" size="693,327" group="n10_li13"/>
+    <image id="n4_ifoa" name="n4" src="rwcw5" fileName="images/pop/tanchuangdiban3.png" pkg="gt6q23qw" xy="48,517" size="658,241" group="n10_li13"/>
+    <text id="n5_ifoa" name="n5" xy="298,471" pivot="0.5,0.5" size="160,36" group="n10_li13" fontSize="26" color="#49517e" align="center" text="累计拥有效果"/>
+    <list id="n1_ifoa" name="List" xy="72,525" size="621,217" group="n10_li13" overflow="scroll" lineGap="-3" defaultItem="ui://2981jnh7ifoa5c" autoItemSize="false" autoClearItems="true" scrollItemToViewOnClick="false">
       <item/>
       <item/>
       <item/>
@@ -18,9 +21,12 @@
       <item/>
       <item/>
     </list>
-    <text id="n7_ifoa" name="n7" xy="194,787" pivot="0.5,0.5" size="368,36" fontSize="26" color="#ffffff" align="center" text="当前应用的所有效果的合计数值"/>
-    <image id="n8_ifoa" name="n8" src="ifoa5d" fileName="Book/img/fenge.png" xy="28,484" color="#727aa8"/>
-    <image id="n9_ifoa" name="n9" src="ifoa5d" fileName="Book/img/fenge.png" xy="726,484" scale="-1,1" color="#727aa8"/>
+    <text id="n7_ifoa" name="n7" xy="194,787" pivot="0.5,0.5" size="368,36" group="n10_li13" fontSize="26" color="#ffffff" align="center" text="当前应用的所有效果的合计数值"/>
+    <image id="n8_ifoa" name="n8" src="ifoa5d" fileName="Book/img/fenge.png" xy="28,484" group="n10_li13" color="#727aa8"/>
+    <image id="n9_ifoa" name="n9" src="ifoa5d" fileName="Book/img/fenge.png" xy="726,484" group="n10_li13" scale="-1,1" color="#727aa8"/>
+    <group id="n10_li13" name="n10" xy="12,378" size="944,464" advanced="true">
+      <relation target="" sidePair="middle-middle"/>
+    </group>
   </displayList>
   <scriptData genuilayerifoa5b="4" gencodeifoa5b="1"/>
 </component>