CfgEnemy.cs 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. //------------------------------------------------------------------------------
  2. // <auto-generated>
  3. // This code was generated by a tool.
  4. // Changes to this file may cause incorrect behavior and will be lost if
  5. // the code is regenerated.
  6. // </auto-generated>
  7. //------------------------------------------------------------------------------
  8. using Bright.Serialization;
  9. using System.Collections.Generic;
  10. using SimpleJSON;
  11. namespace cfg
  12. {
  13. public sealed partial class CfgEnemy
  14. {
  15. private readonly Dictionary<string, SingleEnemyConfig> _dataMap;
  16. private readonly List<SingleEnemyConfig> _dataList;
  17. public CfgEnemy(JSONNode _json)
  18. {
  19. _dataMap = new Dictionary<string, SingleEnemyConfig>();
  20. _dataList = new List<SingleEnemyConfig>();
  21. foreach(JSONNode _row in _json.Children)
  22. {
  23. var _v = SingleEnemyConfig.DeserializeSingleEnemyConfig(_row);
  24. _dataList.Add(_v);
  25. _dataMap.Add(_v.Name, _v);
  26. }
  27. PostInit();
  28. }
  29. public Dictionary<string, SingleEnemyConfig> DataMap => _dataMap;
  30. public List<SingleEnemyConfig> DataList => _dataList;
  31. public SingleEnemyConfig GetOrDefault(string key) => _dataMap.TryGetValue(key, out var v) ? v : null;
  32. public SingleEnemyConfig Get(string key) => _dataMap[key];
  33. public SingleEnemyConfig this[string key] => _dataMap[key];
  34. public void Resolve(Dictionary<string, object> _tables)
  35. {
  36. foreach(var v in _dataList)
  37. {
  38. v.Resolve(_tables);
  39. }
  40. PostResolve();
  41. }
  42. public void TranslateText(System.Func<string, string, string> translator)
  43. {
  44. foreach(var v in _dataList)
  45. {
  46. v.TranslateText(translator);
  47. }
  48. }
  49. partial void PostInit();
  50. partial void PostResolve();
  51. }
  52. }