public Assets.Scripts.Models.GameSettingsModel GetGameSettingsAndHighScores() { var sqliteFilename = "GameData.db3"; //string libraryPath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal); //var path = Path.Combine(libraryPath, sqliteFilename); //connectionPath = path; connectionPath = Application.persistentDataPath + "/" + sqliteFilename; Assets.Scripts.Models.GameSettingsModel model = new Assets.Scripts.Models.GameSettingsModel(); lock (locker) { string needsDeserialized = File.ReadAllText(connectionPath); model = JsonConvert.DeserializeObject <Assets.Scripts.Models.GameSettingsModel>(needsDeserialized); return(model); } }
public int SaveItem(Assets.Scripts.Models.GameSettingsModel item) { var sqliteFilename = "GameData.db3"; connectionPath = Application.persistentDataPath + "/" + sqliteFilename; lock (locker) { if (File.Exists(connectionPath)) { string needsDeserialized = File.ReadAllText(connectionPath); var existingSettings = JsonConvert.DeserializeObject <Assets.Scripts.Models.GameSettingsModel>(needsDeserialized); if (existingSettings != null) { existingSettings.Volume = item.Volume; existingSettings.DateEntered = DateTime.UtcNow.ToString(); existingSettings.HighScores = item.HighScores; existingSettings.Died = item.Died; string serializedObject = JsonConvert.SerializeObject(existingSettings); File.Create(connectionPath).Dispose(); File.AppendAllText(connectionPath, serializedObject); } else { existingSettings = item; string serializedObject = JsonConvert.SerializeObject(existingSettings); File.Create(connectionPath).Dispose(); File.AppendAllText(connectionPath, serializedObject); } } else if (!File.Exists(connectionPath)) { string serializedObject = JsonConvert.SerializeObject(item); File.Create(connectionPath).Dispose(); File.AppendAllText(connectionPath, serializedObject); } return(1); } }