using System.Collections.Generic; using UnityEngine; public partial class HeroLineupHaloConfig : ConfigBase { // 国家 数量 private static Dictionary> configDics = new Dictionary>(); // 混搭阵型索引:Key=Countrys, Value={NeedHeroCount→Config} private static Dictionary> mixedConfigDics = new Dictionary>(); protected override void OnConfigParseCompleted() { if (Country == 0 && Countrys > 0) { // 混搭阵型配置 Dictionary tempDic = null; if (!mixedConfigDics.TryGetValue(Countrys, out tempDic)) { tempDic = new Dictionary(); mixedConfigDics.Add(Countrys, tempDic); } tempDic[NeedHeroCount] = this; } else { // 单国家配置 Dictionary tempDic = null; if (!configDics.TryGetValue(Country, out tempDic)) { tempDic = new Dictionary(); configDics.Add(Country, tempDic); } tempDic[NeedHeroCount] = this; } } public static HeroLineupHaloConfig GetConfig(int country, int count) { if (!configDics.ContainsKey(country)) { return null; } if (!configDics[country].ContainsKey(count)) { return null; } return configDics[country][count]; } /// /// 获取所有混搭配置 /// public static Dictionary> GetAllMixedConfigs() { return mixedConfigDics; } public static Dictionary GetAttrsByCountry(int country) { Dictionary attrs; configDics.TryGetValue(country, out attrs); return attrs; } }