72 lines
1.9 KiB
C#
72 lines
1.9 KiB
C#
|
|
//------------------------------------------------------------------------------
|
||
|
|
// <auto-generated>
|
||
|
|
// This code was generated by a tool.
|
||
|
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||
|
|
// the code is regenerated.
|
||
|
|
// </auto-generated>
|
||
|
|
//------------------------------------------------------------------------------
|
||
|
|
using Bright.Serialization;
|
||
|
|
using System.Collections.Generic;
|
||
|
|
using SimpleJSON;
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
namespace cfg
|
||
|
|
{
|
||
|
|
|
||
|
|
public sealed partial class ConditionConfig
|
||
|
|
{
|
||
|
|
private readonly Dictionary<int, DataCondition> _dataMap;
|
||
|
|
private readonly List<DataCondition> _dataList;
|
||
|
|
|
||
|
|
public ConditionConfig(JSONNode _json)
|
||
|
|
{
|
||
|
|
_dataMap = new Dictionary<int, DataCondition>();
|
||
|
|
_dataList = new List<DataCondition>();
|
||
|
|
|
||
|
|
foreach(JSONNode _row in _json.Children)
|
||
|
|
{
|
||
|
|
var _v = DataCondition.DeserializeDataCondition(_row);
|
||
|
|
_dataList.Add(_v);
|
||
|
|
_dataMap.Add(_v.Id, _v);
|
||
|
|
}
|
||
|
|
PostInit();
|
||
|
|
}
|
||
|
|
|
||
|
|
public Dictionary<int, DataCondition> DataMap => _dataMap;
|
||
|
|
public List<DataCondition> DataList => _dataList;
|
||
|
|
|
||
|
|
public DataCondition GetOrDefault(int key) => _dataMap.TryGetValue(key, out var v) ? v : null;
|
||
|
|
public DataCondition Get(int key) {
|
||
|
|
if (_dataMap.TryGetValue(key, out var v)) {
|
||
|
|
return v;
|
||
|
|
} else {
|
||
|
|
UnityEngine.Debug.LogError($"table ConditionConfig key not found: {key}");
|
||
|
|
return null;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
public DataCondition this[int key] => _dataMap[key];
|
||
|
|
|
||
|
|
public void Resolve(Dictionary<string, object> _tables)
|
||
|
|
{
|
||
|
|
foreach(var v in _dataList)
|
||
|
|
{
|
||
|
|
v.Resolve(_tables);
|
||
|
|
}
|
||
|
|
PostResolve();
|
||
|
|
}
|
||
|
|
|
||
|
|
public void TranslateText(System.Func<string, string, string> translator)
|
||
|
|
{
|
||
|
|
foreach(var v in _dataList)
|
||
|
|
{
|
||
|
|
v.TranslateText(translator);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
partial void PostInit();
|
||
|
|
partial void PostResolve();
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|