|
@@ -729,6 +729,66 @@ namespace GFGGame
|
|
|
return result;
|
|
|
}
|
|
|
|
|
|
+ public static List<int> GetAllDressUpGuideIdListBySubTypes(List<int> subTypes)
|
|
|
+ {
|
|
|
+ List<int> result = new List<int>();
|
|
|
+ List<ItemCfg> itemCfgs = new List<ItemCfg>();
|
|
|
+
|
|
|
+ for (int j = 0; j < subTypes.Count; j++)
|
|
|
+ {
|
|
|
+ int subType = subTypes[j];
|
|
|
+ if (subType == ConstDressUpItemType.TE_SHU)
|
|
|
+ {
|
|
|
+ ItemTypeCfg[] itemTypeCfg = ItemTypeCfgArray.Instance.dataArray;
|
|
|
+ for (int i = 0; i < itemTypeCfg.Length; i++)
|
|
|
+ {
|
|
|
+ if (itemTypeCfg[i].type > ConstDressUpItemType.TE_SHU)
|
|
|
+ {
|
|
|
+ itemCfgs.AddRange(ItemCfgArray.Instance.GetCfgsByitemTypeAndsubType(ConstItemType.DRESS_UP, itemTypeCfg[i].type));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ itemCfgs.AddRange(ItemCfgArray.Instance.GetCfgsByitemTypeAndsubType(ConstItemType.DRESS_UP, subType));
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ itemCfgs.Sort((a, b) =>
|
|
|
+ {
|
|
|
+ bool haveA = CheckHasItem(a.id);
|
|
|
+ bool haveB = CheckHasItem(b.id);
|
|
|
+
|
|
|
+ if (haveB && !haveA)
|
|
|
+ {
|
|
|
+ return 1;
|
|
|
+ }
|
|
|
+ else if (!haveB && haveA)
|
|
|
+ {
|
|
|
+ return -1;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (a.rarity != b.rarity)
|
|
|
+ {
|
|
|
+ return a.rarity > b.rarity ? -1 : 1;
|
|
|
+ }
|
|
|
+
|
|
|
+ return a.res.CompareTo(b.res);
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
+ for (int i = 0; i < itemCfgs.Count; i++)
|
|
|
+ {
|
|
|
+ if (itemCfgs[i].isHide <= 0)
|
|
|
+ {
|
|
|
+ result.Add(itemCfgs[i].id);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
public static bool isLoading = false;
|
|
|
public static async Task GetAllDressUpGuideIdListBySubTypeAsync()
|
|
|
{
|