WorldObjectLocatorManagerSaveData.cs 1.3 KB

1234567891011121314151617181920212223242526272829303132333435
  1. using SOTF_Struct.Data;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. namespace SOTF_Savegame_Editor.SOTFSave {
  8. public class WorldObjectLocatorManagerSaveData {
  9. public class DataObject {
  10. public string WorldObjectLocatorManager { get; set; }
  11. }
  12. public string Version { get; set; }
  13. public DataObject Data { get; set; }
  14. protected WorldObjectLocatorManager? _data = null;
  15. public WorldObjectLocatorManager? Construction {
  16. get {
  17. if (this._data == null) {
  18. System.Text.Json.JsonSerializerOptions options = new() {
  19. NumberHandling = System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString | System.Text.Json.Serialization.JsonNumberHandling.AllowNamedFloatingPointLiterals,
  20. AllowTrailingCommas = true,
  21. IgnoreReadOnlyFields = true,
  22. IgnoreReadOnlyProperties = true
  23. };
  24. this._data = System.Text.Json.JsonSerializer.Deserialize<WorldObjectLocatorManager>(this.Data.WorldObjectLocatorManager.Replace("\"NaN\"", "0"), options);
  25. }
  26. return this._data;
  27. }
  28. }
  29. }
  30. }