CustomSuitDataManager.cs 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. using System.Collections.Generic;
  2. using System.Collections;
  3. using ET;
  4. namespace GFGGame
  5. {
  6. public class CustomSuitDataManager
  7. {
  8. private static int _currentIndex;
  9. public static int currentIndex { get; set; }
  10. private const int _defaultPosCount = 3;
  11. private static MonthlyCardPrivilegeCfg privilegeCfg = MonthlyCardPrivilegeCfgArray.Instance.GetCfg(MonthCardPrivilegeType.Privilege3);
  12. // private string[] posItems = new string[_defaultPosCount + privilegeCfg.value1Arr[0] + privilegeCfg.value2Arr[1]];
  13. private static Dictionary<int, CustomSuitData> _dataDic = new Dictionary<int, CustomSuitData>();
  14. public static void SaveSuit(int index, DressUpData dressUpData)
  15. {
  16. CustomSuitData suitSavedData = null;
  17. if (_dataDic.ContainsKey(index))
  18. {
  19. suitSavedData = _dataDic[index];
  20. }
  21. else
  22. {
  23. suitSavedData = new CustomSuitData(index);
  24. _dataDic.Add(index, suitSavedData);
  25. }
  26. suitSavedData.dressUpData = dressUpData;
  27. }
  28. public static CustomSuitData GetSuitList(int index)
  29. {
  30. CustomSuitData suitSavedData = null;
  31. if (_dataDic.ContainsKey(index))
  32. {
  33. suitSavedData = _dataDic[index];
  34. }
  35. else
  36. {
  37. suitSavedData = CreateDefaultSuitData(index);
  38. _dataDic.Add(index, suitSavedData);
  39. }
  40. return suitSavedData;
  41. }
  42. public static CustomSuitData CreateDefaultSuitData(int index)
  43. {
  44. CustomSuitData suitSavedData = new CustomSuitData(index);
  45. suitSavedData.dressUpData = DressUpData.CreateDefault();
  46. return suitSavedData;
  47. }
  48. public static CustomSuitData GetCurrentSuitData()
  49. {
  50. return GetSuitList(currentIndex);
  51. }
  52. public static void SaveCurrentSuit(int index)
  53. {
  54. if (currentIndex != index)
  55. {
  56. currentIndex = index;
  57. }
  58. CustomSuitSProxy.UpdateCustomSuit(index, MyDressUpHelper.dressUpObj.DressUpDataClone()).Coroutine();
  59. }
  60. public static void InitServerData(List<CustomSuitProto> list)
  61. {
  62. _dataDic.Clear();
  63. if (list != null)
  64. {
  65. foreach (var suitProto in list)
  66. {
  67. CustomSuitData suitSavedData = new CustomSuitData(suitProto.Pos);
  68. _dataDic[suitProto.Pos] = suitSavedData;
  69. suitSavedData.dressUpData.bgId = suitProto.BgId;
  70. suitSavedData.dressUpData.suitId = suitProto.SuitId;
  71. suitSavedData.dressUpData.actionId = suitProto.ActionId;
  72. foreach (var equipId in suitProto.EquipIds)
  73. {
  74. suitSavedData.dressUpData.itemList.Add(equipId);
  75. }
  76. }
  77. }
  78. }
  79. //检测是否是月卡位置,0默认位置
  80. public static bool CheckIsCardPos(int cardType, int pos)
  81. {
  82. // if (pos < _defaultPosCount) return false;
  83. // for (int i = _defaultPosCount; i < posItems.Length; i++)
  84. // {
  85. // if (cardType == MonthCardType.Gold && pos <)
  86. // {
  87. // }
  88. // }
  89. return false;
  90. }
  91. }
  92. }