Одна из основных задач разработки игр - это хранение информации о игровом контенте. Варианты оружия, брони, различные предметы или может быть даже здания, доступные для строительства. В любом случае большинство разработчиков начинают свой путь с поиска базы данных и часто выбор падает на SQLite или загрузка данных из json файла описания. Но Unity содержит мощный встроенный инструмент для этих задач - ScriptableObject.
CollectableItemData.cs
[CreateMenuItem(fileName = "newItem", menuName = "Data/Items/Collectable", order = 51]