В системе пользовательских предметов и инвентарей item_component становится классом, определяющим, чем предмет является и не является. О том, как добавить компонент к модулю, подробно рассказано в разделе Работа с модулями и компонентами.
Модули считаются предметами только в том случае, если у них есть item_component. Без него модули не будут добавляться в инвентарь, а многие функции пользовательских предметов и инвентарей могут не работать.
Под термином «предмет» подразумевается непосредственно модуль с
item_component.Под термином «инвентарь» подразумевается непосредственно модуль с
inventory_component.
Определение класса
Прикрепление item_component к модулю превращает этот модуль в предмет. Предметы обладают рядом свойств, которые могут использоваться другими компонентами:
Ими можно манипулировать с помощью инвентарей.
Их можно подобрать и выбросить.
Предметы можно брать в руки и убирать обратно.
Функциональность предмета можно расширить с помощью дополнительных компонентов, которые предоставляют различные функции и базовый игровой процесс Fortnite. Вы также можете писать собственные компоненты Verse. Для получения подробной информации ознакомьтесь со справочником по API item_component в API Verse.
Полный список компонентов пользовательских предметов и инвентарей см. в разделе Компоненты.
Присвоив этому готовому элементу атрибут item_component, мы получаем возможность хранить его как предмет в инвентаре.
Verse: предметы
Компонент item_component содержит поля, функции и события, которые можно использовать через Verse.
getParentInventory []— позволяет предметам идентифицировать свой родительский инвентарь.
Categories— массивitem_category, который можно использовать для сортировки и характеристики.Equip(),Unequip()иIsEquipped[]— эти функции помогают управлять состоянием использования предмета.ChangeEquippedEvent— это событие срабатывает в компоненте предмета при вызове функций Equip() или Unequip().ChangeInventoryEvent— отслеживайте перемещение предметов между инвентарями.
Пример
Компоненты предмета требуются модулям, чтобы функционировать в качестве предметов. Редактор заготовок ограничивает редактируемые свойства, поэтому, чтобы выжать из компонента максимум, используйте Verse.
using { /Fortnite.com/Devices }
using { /Verse.org/SceneGraph }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Itemization }
# This device will create an item for all players when they are added to Playspace. Once the item is created it will pick itself up to the Player's inventory.
item_giver_device := class(creative_device) :
Функции можно легко добавить к предметам, используя подкласс item_component. Подкласс позволяет изменять базовые свойства или добавлять новые функции и поля для вашего проекта.
using { /UnrealEngine.com/Itemization }
using { /Fortnite.com/Itemization/FortniteItemCategories }
custom_item_component := class(item_component) :
# We could populate the Categories array with Fortnite and/or custom item categories.
#For example here, we are using the Resource item_category type.
Categories<override>:[]item_category = array{Resource}