using System.Collections.Generic; using System.IO; using System.Threading; using System; using UnityEngine; using LitJson; public partial class HeroQualityAwakeConfig : ConfigBase { // Quality, Dictionary public static Dictionary> costDics = new Dictionary>(); protected override void OnConfigParseCompleted() { base.OnConfigParseCompleted(); Dictionary tempDic = null; if (!costDics.TryGetValue(Quality, out tempDic)) { tempDic = new Dictionary(); } if (tempDic.ContainsKey(AwakeLV)) { // 覆盖 这里怕有代码写错 二次初始化配置 导致出问题 // 当是防错 性能上也不算太耗 因为表就没多少数据 tempDic[AwakeLV] = this; } else { tempDic.Add(AwakeLV, this); } } public static HeroQualityAwakeConfig GetQualityAwakeConfig(int quality, int awakeLv) { Dictionary tempDic = null; if (!costDics.TryGetValue(quality, out tempDic)) { return null; } HeroQualityAwakeConfig config = null; tempDic.TryGetValue(awakeLv, out config); return config; } public static bool IsReachMax(int quality, int awakeLv) { return GetQualityAwakeConfig(quality, awakeLv) == null; } }