Arma Reforger Explorer
1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Toggle main menu visibility
Loading...
Searching...
No Matches
SCR_ItemOutfitFactionComponent.c
Go to the documentation of this file.
1
[
ComponentEditorProps
(
category
:
"GameScripted/Inventory"
, description:
""
)]
2
class
SCR_ItemOutfitFactionComponentClass
:
ScriptComponentClass
3
{
4
}
5
6
[
BaseContainerProps
(),
SCR_BaseContainerTitleFieldWithValue
(
"m_AffiliatedFactionKey"
,
"m_iOutfitFactionValue"
,
"%1: %2"
,
"10"
)]
7
class
SCR_OutfitFactionData
8
{
9
[
Attribute
(
desc
:
"Needs to be unique"
)]
10
protected
FactionKey
m_AffiliatedFactionKey;
11
12
[
Attribute
(
"10"
,
desc
:
"0 value means it is ignored"
,
params
:
"0 inf"
)]
13
protected
int
m_iOutfitFactionValue;
14
15
protected
Faction
m_AffiliatedFaction;
16
17
//------------------------------------------------------------------------------------------------
19
bool
Init
(notnull FactionManager factionManager)
20
{
21
m_AffiliatedFaction = factionManager.GetFactionByKey(m_AffiliatedFactionKey);
22
if
(!m_AffiliatedFaction)
23
return
false
;
24
25
return
m_iOutfitFactionValue > 0;
26
}
27
28
//------------------------------------------------------------------------------------------------
30
FactionKey
GetAffiliatedFactionKey
()
31
{
32
return
m_AffiliatedFactionKey;
33
}
34
35
//------------------------------------------------------------------------------------------------
37
int
GetOutfitFactionValue()
38
{
39
return
m_iOutfitFactionValue;
40
}
41
42
//------------------------------------------------------------------------------------------------
44
Faction
GetAffiliatedFaction
()
45
{
46
return
m_AffiliatedFaction;
47
}
48
}
49
50
[
BaseContainerProps
()]
51
class
SCR_OutfitFactionDataHolder
52
{
53
[
Attribute
()]
54
protected
ref array<ref SCR_OutfitFactionData>
m_aOutfitFactionData
;
55
56
//------------------------------------------------------------------------------------------------
58
void
Init
(notnull FactionManager factionManager)
59
{
60
//~ Clear any invalid entries
61
for
(
int
i =
m_aOutfitFactionData
.Count() - 1; i >= 0; i--)
62
{
63
//~ Init. If failed remove from init
64
if
(!
m_aOutfitFactionData
[i].
Init
(factionManager))
65
{
66
m_aOutfitFactionData
.RemoveOrdered(i);
67
continue
;
68
}
69
}
70
}
71
72
//------------------------------------------------------------------------------------------------
74
int
GetOutfitFactionDataArrayCount
()
75
{
76
return
m_aOutfitFactionData
.Count();
77
}
78
79
//------------------------------------------------------------------------------------------------
80
83
int
GetOutfitFactionDataArray
(out notnull array<SCR_OutfitFactionData> outfitDataArray)
84
{
85
outfitDataArray.Clear();
86
87
foreach
(SCR_OutfitFactionData
data
:
m_aOutfitFactionData
)
88
{
89
outfitDataArray.Insert(
data
);
90
}
91
92
return
outfitDataArray.Count();
93
}
94
95
//------------------------------------------------------------------------------------------------
99
SCR_OutfitFactionData
GetOutfitFactionData
(
FactionKey
faction)
100
{
101
if
(faction.IsEmpty())
102
return
null;
103
104
foreach
(SCR_OutfitFactionData
data
:
m_aOutfitFactionData
)
105
{
106
if
(
data
.GetOutfitFactionValue() <= 0)
107
continue
;
108
109
if
(
data
.GetAffiliatedFactionKey() == faction)
110
return
data
;
111
}
112
113
return
null;
114
}
115
116
//------------------------------------------------------------------------------------------------
120
SCR_OutfitFactionData
GetOutfitFactionData
(notnull
Faction
faction)
121
{
122
foreach
(SCR_OutfitFactionData
data
:
m_aOutfitFactionData
)
123
{
124
if
(
data
.GetOutfitFactionValue() <= 0)
125
continue
;
126
127
if
(
data
.GetAffiliatedFaction() == faction)
128
return
data
;
129
}
130
131
return
null;
132
}
133
}
134
135
class
SCR_ItemOutfitFactionComponent :
ScriptComponent
136
{
137
[
Attribute
()]
138
protected
ref SCR_OutfitFactionDataHolder m_OutfitDataHolder;
139
140
protected
bool
m_bInitCalled
;
141
142
//------------------------------------------------------------------------------------------------
144
bool
IsValid
()
145
{
146
return
m_OutfitDataHolder && m_OutfitDataHolder.GetOutfitFactionDataArrayCount() > 0;
147
}
148
149
//------------------------------------------------------------------------------------------------
153
int
GetOutfitFactionDataArray
(out notnull array<SCR_OutfitFactionData> outfitValues)
154
{
155
if
(!m_OutfitDataHolder)
156
return
0;
157
158
array<SCR_OutfitFactionData> outfitDataArray = {};
159
m_OutfitDataHolder.GetOutfitFactionDataArray(outfitDataArray);
160
161
foreach
(SCR_OutfitFactionData
data
: outfitDataArray)
162
{
163
outfitValues.Insert(
data
);
164
}
165
166
return
outfitValues.Count();
167
}
168
169
//------------------------------------------------------------------------------------------------
173
int
GetOutfitValueOfFaction
(notnull
Faction
faction)
174
{
175
if
(!m_OutfitDataHolder)
176
return
0;
177
178
array<SCR_OutfitFactionData> outfitDataArray = {};
179
m_OutfitDataHolder.GetOutfitFactionDataArray(outfitDataArray);
180
181
foreach
(SCR_OutfitFactionData
data
: outfitDataArray)
182
{
183
if
(
data
.GetAffiliatedFactionKey() == faction.GetFactionKey())
184
return
data
.GetOutfitFactionValue();
185
}
186
187
return
0;
188
}
189
190
//------------------------------------------------------------------------------------------------
194
void
OnAddedToSlot
(notnull SCR_CharacterFactionAffiliationComponent characterFactionAffiliationComponent,
bool
updateFaction =
true
)
195
{
196
if
(!
IsValid
())
197
return
;
198
199
if
(!
m_bInitCalled
)
200
Init
();
201
202
characterFactionAffiliationComponent.AddFactionOutfitValue(m_OutfitDataHolder, updateFaction);
203
}
204
205
//------------------------------------------------------------------------------------------------
209
void
OnRemovedFromSlot
(notnull SCR_CharacterFactionAffiliationComponent characterFactionAffiliationComponent,
bool
updateFaction =
true
)
210
{
211
if
(!
IsValid
())
212
return
;
213
214
if
(!
m_bInitCalled
)
215
Init
();
216
217
characterFactionAffiliationComponent.RemoveFactionOutfitValue(m_OutfitDataHolder, updateFaction);
218
}
219
220
//------------------------------------------------------------------------------------------------
221
protected
void
Init
()
222
{
223
if
(
m_bInitCalled
)
224
return
;
225
226
m_bInitCalled
=
true
;
227
228
if
(!m_OutfitDataHolder)
229
return
;
230
231
FactionManager factionManager =
GetGame
().GetFactionManager();
232
if
(!factionManager)
233
{
234
m_OutfitDataHolder = null;
235
return
;
236
}
237
238
m_OutfitDataHolder.Init(factionManager);
239
}
240
241
//------------------------------------------------------------------------------------------------
242
override
void
EOnInit
(
IEntity
owner)
243
{
244
Init
();
245
}
246
247
//------------------------------------------------------------------------------------------------
248
override
void
OnPostInit
(
IEntity
owner)
249
{
250
if
(
SCR_Global
.
IsEditMode
())
251
return
;
252
253
SetEventMask
(owner,
EntityEvent
.INIT);
254
}
255
}
256
257
Init
override void Init()
Definition
CharacterCameraHandlerComponent.c:40
GetGame
ArmaReforgerScripted GetGame()
Definition
game.c:1398
ComponentEditorProps
enum EAIGroupCombatMode ComponentEditorProps(category:"GameScripted/AI", description:"Component for utility AI system for groups")
Definition
SCR_AIGroupUtilityComponent.c:12
data
Get all prefabs that have the spawner data
Definition
SCR_EntityCatalogManagerComponent.c:320
Faction
Get all prefabs that have the spawner the given labels and are valid in the editor mode param catalogType Type to catalog to get prefabs from param editorMode Editor mode to get valid entries from param faction Faction(Optional)
Definition
SCR_EntityCatalogManagerComponent.c:415
Init
void Init()
Definition
SCR_ItemOutfitFactionComponent.c:221
m_bInitCalled
bool m_bInitCalled
Definition
SCR_ItemOutfitFactionComponent.c:140
SCR_BaseContainerTitleFieldWithValue
SCR_ItemOutfitFactionComponentClass ScriptComponentClass SCR_BaseContainerTitleFieldWithValue("m_AffiliatedFactionKey", "m_iOutfitFactionValue", "%1: %2", "10")
Definition
SCR_ItemOutfitFactionComponent.c:6
IsValid
bool IsValid()
Definition
SCR_ItemOutfitFactionComponent.c:144
BaseContainerProps
SCR_ItemOutfitFactionComponentClass ScriptComponentClass BaseContainerProps()
GetOutfitFactionDataArray
int GetOutfitFactionDataArray(out notnull array< SCR_OutfitFactionData > outfitDataArray)
Definition
SCR_ItemOutfitFactionComponent.c:30
GetOutfitValueOfFaction
int GetOutfitValueOfFaction(notnull Faction faction)
Definition
SCR_ItemOutfitFactionComponent.c:173
desc
UI Textures DeployMenu Briefing conflict_HintBanner_1_UI desc
Definition
SCR_RespawnBriefingComponent.c:17
params
category params
Definition
SCR_SpherePointGeneratorPreviewComponent.c:21
category
params category
Definition
SCR_VehicleDamageManagerComponent.c:302
Faction
Definition
Faction.c:13
FactionKey
Definition
FactionKey.c:3
GenericComponent::SetEventMask
proto external int SetEventMask(notnull IEntity owner, int mask)
IEntity
Definition
IEntity.c:13
SCR_Global
Definition
Functions.c:7
SCR_Global::IsEditMode
static bool IsEditMode()
Definition
Functions.c:1566
SCR_ItemOutfitFactionComponentClass
Definition
SCR_ItemOutfitFactionComponent.c:3
SCR_OutfitFactionDataHolder
Definition
SCR_ItemOutfitFactionComponent.c:52
SCR_OutfitFactionDataHolder::Init
void Init(notnull FactionManager factionManager)
Init the faction outfit data array.
Definition
SCR_ItemOutfitFactionComponent.c:58
SCR_OutfitFactionDataHolder::GetOutfitFactionDataArrayCount
int GetOutfitFactionDataArrayCount()
Definition
SCR_ItemOutfitFactionComponent.c:74
SCR_OutfitFactionDataHolder::GetOutfitFactionData
SCR_OutfitFactionData GetOutfitFactionData(FactionKey faction)
Definition
SCR_ItemOutfitFactionComponent.c:99
SCR_OutfitFactionDataHolder::m_aOutfitFactionData
ref array< ref SCR_OutfitFactionData > m_aOutfitFactionData
Definition
SCR_ItemOutfitFactionComponent.c:54
SCR_OutfitFactionDataHolder::GetOutfitFactionData
SCR_OutfitFactionData GetOutfitFactionData(notnull Faction faction)
Definition
SCR_ItemOutfitFactionComponent.c:120
SCR_OutfitFactionDataHolder::GetOutfitFactionDataArray
int GetOutfitFactionDataArray(out notnull array< SCR_OutfitFactionData > outfitDataArray)
Definition
SCR_ItemOutfitFactionComponent.c:83
ScriptComponentClass
Definition
ScriptComponentClass.c:8
ScriptComponent
Definition
ScriptComponent.c:24
ScriptComponent::EOnInit
void EOnInit(IEntity owner)
GetAffiliatedFaction
SCR_CampaignFaction GetAffiliatedFaction()
Returns the affiliated faction or null if none.
Definition
SCR_CampaignMobileAssemblyComponent.c:78
GetAffiliatedFactionKey
proto external FactionKey GetAffiliatedFactionKey()
Attribute
SCR_FieldOfViewSettings Attribute
Definition
SendGoalMessage.c:170
EntityEvent
EntityEvent
Various entity events.
Definition
EntityEvent.c:14
OnRemovedFromSlot
void OnRemovedFromSlot(IEntity item, int slotID)
Definition
SCR_HandSlotStorageComponent.c:229
OnAddedToSlot
void OnAddedToSlot(IEntity item, int slotID)
Definition
SCR_HandSlotStorageComponent.c:96
OnPostInit
@ OnPostInit
Definition
SndComponentCallbacks.c:15
scripts
Game
Inventory
SCR_ItemOutfitFactionComponent.c
Generated by
1.17.0