4 [
Attribute(
"2",
desc:
"Type of the arsenal item. An arsenal will only spawn items of types that it allows to be spawned. The item will not show up if it is not allowed. Eg: FieldDressing = HEAL", uiwidget: UIWidgets.SearchComboBox, enums: ParamEnumArray.FromEnum(
SCR_EArsenalItemType))]
7 [
Attribute(
"2",
desc:
"Item mode of arsenal, set this to what the behaviour is for the item. EG: FieldDressing = CONSUMABLE as it is used up or M16 with attachments = WEAPON_VARIENTS as it is not a default M16. Check other items in the faction config to see how it works.", uiwidget: UIWidgets.SearchComboBox, enums: ParamEnumArray.FromEnum(
SCR_EArsenalItemMode))]
10 [
Attribute(
"10",
desc:
"Supply cost of item when using the resupply action and/or taking them from the arsenal inventory. Note in overwrite arsenal config this value is ignored and still taken from catalog",
params:
"0 inf 1")]
11 protected int m_iSupplyCost;
13 [
Attribute(
desc:
"Display data for SCR_ArsenalDisplayComponent. If Arsenal item has display data of the correct type for the entity with SCR_ArsenalDisplayComponent than it can be displayed on said entity")]
14 protected ref array<ref SCR_ArsenalItemDisplayData> m_aArsenalDisplayData;
16 [
Attribute(
desc:
"Depending on the settings of the arsenal component arsenal items can have an alternative supply cost. So it will take the cost of the alternative rather than the default cost. \n\nIf an Arsenal is not cost type default and the arsenal item does not have that cost type defined than it will still use the default cost.\n\nIf multiple entries have the same value than the last in the array will be used")]
17 protected ref array<ref SCR_ArsenalAlternativeCostData> m_aArsenalAlternativeCostData;
19 protected ref map<SCR_EArsenalSupplyCostType, int> m_mArsenalAlternativeCostData;
22 protected ref Resource m_ItemResource;
40 ResourceName GetItemResourceName()
50 Resource GetItemResource()
63 if (displayData.GetDisplayType() == displayType)
76 int GetSupplyCost(SCR_EArsenalSupplyCostType supplyCostType)
78 if (supplyCostType != SCR_EArsenalSupplyCostType.DEFAULT && m_mArsenalAlternativeCostData !=
null)
104 if (
data.m_eAlternativeCostType == SCR_EArsenalSupplyCostType.DEFAULT)
117 class SCR_ArsenalAlternativeCostData
119 [
Attribute(SCR_EArsenalSupplyCostType.GADGET_ARSENAL.ToString(),
desc:
"Cost type if system searches for the cost. Do not use DEFAULT as this will be ignored", uiwidget: UIWidgets.SearchComboBox, enums: ParamEnumArray.FromEnum(SCR_EArsenalSupplyCostType))]
120 SCR_EArsenalSupplyCostType m_eAlternativeCostType;