//------------------------------------------------------------------------------ // // This code was generated by a tool. // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // //------------------------------------------------------------------------------ using Luban; using SimpleJSON; namespace cfg { public partial class SystemCfg { private readonly System.Collections.Generic.Dictionary _dataMap; private readonly System.Collections.Generic.List _dataList; public SystemCfg(JSONNode _buf) { _dataMap = new System.Collections.Generic.Dictionary(); _dataList = new System.Collections.Generic.List(); foreach(JSONNode _ele in _buf.Children) { DataSystemCfg _v; { if(!_ele.IsObject) { throw new SerializationException(); } _v = global::cfg.DataSystemCfg.DeserializeDataSystemCfg(_ele); } _dataList.Add(_v); _dataMap.Add(_v.Id, _v); } } public System.Collections.Generic.Dictionary DataMap => _dataMap; public System.Collections.Generic.List DataList => _dataList; public DataSystemCfg GetOrDefault(ESystemType key) => _dataMap.TryGetValue(key, out var v) ? v : null; public DataSystemCfg Get(ESystemType key) { if (_dataMap.TryGetValue(key, out var v)) { return v; } else { UnityEngine.Debug.LogError($"table key not found: {key}"); return null; } } public DataSystemCfg this[ESystemType key] => _dataMap[key]; public void ResolveRef(Tables tables) { foreach(var _v in _dataList) { _v.ResolveRef(tables); } } } }