using System.Collections.Generic; using System.Collections; using ET; namespace GFGGame { public class CustomSuitDataManager { public static int currentIndex { get { return StorageDataManager.Instance.GetStorageValue(ConstStorageId.STORAGE_CUSTOME_SUIT_INDEX); } } private static Dictionary _dataDic = new Dictionary(); private static void SaveSuit(int index, int[] arrayList, int bgID = 0, int suitId = 0, int pic = 0) { CustomSuitData suitSavedData = null; if(_dataDic.ContainsKey(index)) { suitSavedData = _dataDic[index]; } else { suitSavedData = new CustomSuitData(index); _dataDic.Add(index, suitSavedData); } suitSavedData.equipDatas = arrayList; suitSavedData.bg = bgID; suitSavedData.pic = pic; suitSavedData.suitId = suitId; GameProxy.ReqUpdateRoleSuit(suitSavedData); } public static CustomSuitData GetSuitList(int index) { CustomSuitData suitSavedData = null; if(_dataDic.ContainsKey(index)) { suitSavedData = _dataDic[index]; } else { suitSavedData = CreateDefaultSuitData(index); _dataDic.Add(index, suitSavedData); } return suitSavedData; } public static CustomSuitData CreateDefaultSuitData(int index) { CustomSuitData suitSavedData = new CustomSuitData(index); suitSavedData.equipDatas = new int[3]{10000, 30000, 50000}; suitSavedData.bg = 180001; suitSavedData.pic = 0; suitSavedData.suitId = 0; return suitSavedData; } public static CustomSuitData GetCurrentSuitList() { return GetSuitList(currentIndex); } public static void SaveCurrentSuit(int index) { if(currentIndex != index) { StorageSProxy.ReqSetClientValue(ConstStorageId.STORAGE_CUSTOME_SUIT_INDEX ,index).Coroutine(); } SaveSuit(currentIndex, EquipDataCache.cacher.equipDatas, EquipDataCache.cacher.bgId, EquipDataCache.cacher.suitId, EquipDataCache.cacher.picStatus); } public static void InitServerData(int suitIndex, List list) { _dataDic.Clear(); if(list != null) { foreach(RoleSuit roleSuit in list) { CustomSuitData suitSavedData = new CustomSuitData(roleSuit.pos); _dataDic[roleSuit.pos] = suitSavedData; if(roleSuit.equipIds.Length > 0) { string[] ids = roleSuit.equipIds.Split(','); suitSavedData.equipDatas = new int[ids.Length]; for(int i = 0; i < ids.Length; i++) { suitSavedData.equipDatas[i] = int.Parse(ids[i]); } } else { suitSavedData.equipDatas = new int[]{}; } suitSavedData.bg = roleSuit.bg; suitSavedData.pic = roleSuit.pic; suitSavedData.suitId = roleSuit.suitId; } } } } }