浏览代码

代码整理

guodong 3 年之前
父节点
当前提交
049ebbe5af

+ 1 - 1
GameClient/Assets/Game/CSShare

@@ -1 +1 @@
-Subproject commit 24fb676424b9cf11c6840ae5e7ae0f1515856384
+Subproject commit 01af170af060c1d66cea4d8d53412e5fd254e081

+ 97 - 0
GameClient/Assets/Game/HotUpdate/ExcelConfig/Manager/SuitCfgManager.cs

@@ -0,0 +1,97 @@
+using System.Collections.Generic;
+namespace GFGGame
+{
+    public class SuitCfgManager : SingletonBase<SuitCfgManager>
+    {
+
+        private Dictionary<int, int> _suitIDDicByItemID;
+        private Dictionary<int, int> _totalCountDic = new Dictionary<int, int>();
+
+        /// <summary>
+        /// 获取所有套装中部件的总个数
+        /// </summary>
+        public int totalItemCount
+        {
+            get;
+            private set;
+        }
+
+        public SuitCfgManager()
+        {
+            InitDic();
+        }
+
+        /// <summary>
+        /// 获取物品所属套装id
+        /// </summary>
+        /// <param name="itemId"></param>
+        /// <returns></returns>
+        public int GetItemSuitId(int itemId)
+        {
+            if (_suitIDDicByItemID.ContainsKey(itemId))
+            {
+                return _suitIDDicByItemID[itemId];
+            }
+            return 0;
+        }
+
+        /// <summary>
+        /// 获取指定套装中部件的总数
+        /// </summary>
+        /// <param name="suitId"></param>
+        /// <returns></returns>
+        public int GetTotalCountOfOneSuit(int suitId)
+        {
+            return _totalCountDic[suitId];
+        }
+
+        /// <summary>
+        /// 获取指定套装中部件的id数组
+        /// </summary>
+        /// <param name="suitId"></param>
+        /// <returns></returns>
+        public int[] GetSuitItems(int suitId, bool checkScene = false)
+        {
+
+            SuitCfg suitCfg = SuitCfgArray.Instance.GetCfg(suitId);
+            if (checkScene)
+            {
+                List<int> parts = new List<int>();
+                for (int i = 0; i < suitCfg.partsArr.Length; i++)
+                {
+                    if (!DressUpMenuItemDataManager.CheckIsSceneType(suitCfg.partsArr[i]))
+                    {
+                        parts.Add(suitCfg.partsArr[i]);
+                    }
+                }
+                return parts.ToArray();
+            }
+            return suitCfg.partsArr;
+        }
+
+        private void InitDic()
+        {
+            _suitIDDicByItemID = new Dictionary<int, int>();
+            SuitCfg[] dataArray = SuitCfgArray.Instance.dataArray;
+            foreach (SuitCfg suitCfg in dataArray)
+            {
+                parseSuitItems(suitCfg);
+            }
+        }
+
+        private void parseSuitItems(SuitCfg suitCfg)
+        {
+            int[] items = suitCfg.partsArr;
+            int len = items.Length;
+            for (int i = 0; i < len; i++)
+            {
+                int itemID = items[i];
+                _suitIDDicByItemID.Add(itemID, suitCfg.id);
+            }
+            int itemCount = items.Length;
+            _totalCountDic[suitCfg.id] = itemCount;
+            totalItemCount += itemCount;
+        }
+
+    }
+}

+ 11 - 0
GameClient/Assets/Game/HotUpdate/ExcelConfig/Manager/SuitCfgManager.cs.meta

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