SuitCfgManager.cs 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. using System.Collections.Generic;
  2. namespace GFGGame
  3. {
  4. public class SuitCfgManager : SingletonBase<SuitCfgManager>
  5. {
  6. /// <summary>
  7. /// 获取所有套装中部件的总个数
  8. /// </summary>
  9. public int totalItemCount
  10. {
  11. get
  12. {
  13. return GlobalCfgArray.globalCfg.suitPartTotalCount;
  14. }
  15. }
  16. /// <summary>
  17. /// 获取物品所属套装id
  18. /// </summary>
  19. /// <param name="itemId"></param>
  20. /// <returns></returns>
  21. public int GetItemSuitId(int itemId)
  22. {
  23. var itemCfg = ItemCfgArray.Instance.GetCfg(itemId);
  24. if(itemCfg != null)
  25. {
  26. return itemCfg.suitId;
  27. }
  28. return 0;
  29. }
  30. /// <summary>
  31. /// 获取指定套装中部件的总数
  32. /// </summary>
  33. /// <param name="suitId"></param>
  34. /// <returns></returns>
  35. public int GetTotalCountOfOneSuit(int suitId)
  36. {
  37. var suitCfg = SuitCfgArray.Instance.GetCfg(suitId);
  38. if(suitCfg != null)
  39. {
  40. return suitCfg.partsArr.Length;
  41. }
  42. return 0;
  43. }
  44. /// <summary>
  45. /// 获取指定套装中部件的id数组
  46. /// </summary>
  47. /// <param name="suitId"></param>
  48. /// <returns></returns>
  49. public int[] GetSuitItems(int suitId, bool checkScene = false)
  50. {
  51. SuitCfg suitCfg = SuitCfgArray.Instance.GetCfg(suitId);
  52. if (checkScene)
  53. {
  54. List<int> parts = new List<int>();
  55. for (int i = 0; i < suitCfg.partsArr.Length; i++)
  56. {
  57. if (!DressUpMenuItemDataManager.CheckIsSceneType(suitCfg.partsArr[i]))
  58. {
  59. parts.Add(suitCfg.partsArr[i]);
  60. }
  61. }
  62. return parts.ToArray();
  63. }
  64. return suitCfg.partsArr;
  65. }
  66. }
  67. }