using LitJson; using System.Collections; using System.Collections.Generic; using Unity.VisualScripting; using UnityEngine; namespace WK.Data { public class DataManager : Singleton { private Dictionary m_CharacterStatsMetadata = new Dictionary(); private Dictionary m_BuffMetadata = new Dictionary(); private Dictionary m_CharacterMetadata = new Dictionary(); public CharacterStatsMetadata GetCharacterStats(string uid) { CharacterStatsMetadata metadata; if(m_CharacterStatsMetadata.TryGetValue(uid, out metadata)) { return metadata; } return null; } public BuffMetadata GetBuffMetadata(string uid) { BuffMetadata metadata; if(m_BuffMetadata.TryGetValue(uid, out metadata)) { return metadata; } return null; } public void Load() { LoadDefaultStats(); LoadDefaultCharacters(); } private void LoadDefaultStats() { TextAsset text = ResourceManager.Instance.LoadAsset(StaticDefine.StatsFilePath); List stats = CSVReader.Read(text.text); for(int i = 0; i < stats.Count; ++i) { m_CharacterStatsMetadata.Add(stats[i].uid, stats[i]); } } private void LoadDefaultCharacters() { TextAsset text = ResourceManager.Instance.LoadAsset(StaticDefine.RoninPath); CharacterMetadata metadata = JsonMapper.ToObject(text.text); if(metadata != null) { m_CharacterMetadata.Add(metadata.uid, metadata); } } } }