Вступить в клуб →
лёгкаявопросСеть, сохранения и защита игровых данных

В файле сохранения нет инвентаря, хотя остальные поля записались

[Serializable]
public class SaveData
{
    public int level;
    public int coins;
    public Dictionary<string, int> inventory = new();
}

File.WriteAllText(path, JsonUtility.ToJson(save));

В файле {"level":7,"coins":1200} — инвентаря нет, после загрузки он пустой. Почему?

  • JsonUtility не сериализует Dictionary
  • Поле с инициализатором new() пропускается
  • Нужен атрибут [SerializeField] на public-поле
  • ToJson пишет только поля типа int и string

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела