| //-------------------------------------------------------- | 
| //    [Author]:           YYL | 
| //    [  Date ]:           2025年6月13日 | 
| //-------------------------------------------------------- | 
|   | 
| using System.Collections.Generic; | 
| using System.IO; | 
| using System.Threading; | 
| using System; | 
| using UnityEngine; | 
| using LitJson; | 
|   | 
| public partial class HeroAwakeConfig : ConfigBase<int, HeroAwakeConfig> | 
| { | 
|     // public int HeroID; | 
|     // public int AwakeLV; | 
|   | 
|     // HeroID, Dictionary<AwakeLV, HeroAwakeConfig> | 
|     public static Dictionary<int, Dictionary<int, HeroAwakeConfig>> configDics = new Dictionary<int, Dictionary<int, HeroAwakeConfig>>(); | 
|   | 
|     protected override void OnConfigParseCompleted() | 
|     { | 
|         base.OnConfigParseCompleted(); | 
|   | 
|         Dictionary<int, HeroAwakeConfig> tempDic = null; | 
|   | 
|         if (!configDics.TryGetValue(HeroID, out tempDic)) | 
|         { | 
|             tempDic = new Dictionary<int, HeroAwakeConfig>(); | 
|             configDics.Add(HeroID, tempDic); | 
|         } | 
|   | 
|         if (tempDic.ContainsKey(AwakeLV)) | 
|         { | 
|             // 覆盖,防止二次初始化出错 | 
|             tempDic[AwakeLV] = this; | 
|         } | 
|         else | 
|         { | 
|             tempDic.Add(AwakeLV, this); | 
|         } | 
|     } | 
|   | 
|     public static HeroAwakeConfig GetHeroAwakeConfig(int heroID, int awakeLv) | 
|     { | 
|         Dictionary<int, HeroAwakeConfig> tempDic = null; | 
|   | 
|         if (!configDics.TryGetValue(heroID, out tempDic)) | 
|         { | 
|             return null; | 
|         } | 
|   | 
|         HeroAwakeConfig config = null; | 
|         tempDic.TryGetValue(awakeLv, out config); | 
|   | 
|         return config; | 
|     } | 
|   | 
|     public static bool IsReachMax(int heroID, int awakeLv) | 
|     { | 
|         return GetHeroAwakeConfig(heroID, awakeLv) == null; | 
|     } | 
| } |