using System.Collections.Generic; using System.Linq; using Newtonsoft.Json; using UnityEngine; namespace Code.Records { public class RecordsService { private const string Key = "RaceRecords"; public static List Load() { var json = PlayerPrefs.GetString(Key, "[]"); try { return JsonConvert.DeserializeObject>(json) ?? new List(); } catch { return new List(); } } public static void Save(List records) { var json = JsonConvert.SerializeObject(records); PlayerPrefs.SetString(Key, json); PlayerPrefs.Save(); } public static void AddRecord(string name, long totalMs) { var records = Load(); records.Add(new Record(name, totalMs)); records = records.OrderBy(r => r.totalMilliseconds).ToList(); records = records.Take(5).ToList(); Save(records); } } }