/// <summary> /// Read the given save data and use it to reconstruct the mod state. /// </summary> /// <param name="token">The save data.</param> public void LoadData(JToken token) { var serializer = new JsonSerializer(); serializer.Converters.Add(new StringEnumConverter()); var data = token.ToObject <SaveData>(serializer); foreach (var entry in data.ChestEntries) { var chest = ChestFinder.GetChestByAddress(entry.Address); var chestData = ChestDataManager.GetChestData(chest); chestData.AcceptedItemKinds = entry.AcceptedItemKinds .Where(itemKey => ItemDataManager.HasItem(itemKey)); } }