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_DSConfig.c
Go to the documentation of this file.
1
4
5
class
SCR_DSConfig
:
DSConfig
6
{
7
protected
const
string
DEFAULT_FILE_NAME
=
"GeneratedServerConfig"
;
8
9
protected
ref array<ref SCR_WidgetListEntry>
m_aDSConfigEntries
= {};
10
11
ref
SCR_DSOperating
operating
;
12
13
//------------------------------------------------------------------------------------------------
14
void
SCR_DSConfig
()
15
{
16
game
=
new
DSGameConfig
();
17
game
.gameProperties =
new
SCR_DSGameProperties
();
18
game
.mods = {};
19
20
// Register queue settings
21
operating
=
new
SCR_DSOperating
();
22
RegV(
"operating"
);
23
}
24
25
//------------------------------------------------------------------------------------------------
27
void
StoreFullJson
(array<ref SCR_WidgetListEntry> entries, array<ref DSMod> modList,
WorkshopItem
scenarioMod)
28
{
29
m_aDSConfigEntries
= entries;
30
31
// Config
32
bindAddress
=
FindValue
(
"bindAddress"
);
33
bindPort
=
StringToNumber
(
FindValue
(
"bindPort"
));
34
publicAddress
=
FindValue
(
"publicAddress"
);
35
publicPort
=
StringToNumber
(
FindValue
(
"publicPort"
));
36
37
// Game
38
game
.name =
FindValue
(
"name"
);
39
game
.maxPlayers =
StringToNumber
(
FindValue
(
"maxPlayers"
));
40
game
.password =
FindValue
(
"password"
);
41
game
.passwordAdmin =
FindValue
(
"passwordAdmin"
);
42
game
.visible =
SCR_JsonApiStructHandler
.
StringToBool
(
FindValue
(
"visible"
));
43
game
.crossPlatform =
SCR_JsonApiStructHandler
.
StringToBool
(
FindValue
(
"crossPlatform"
));
44
45
// Game properties
46
SCR_DSGameProperties
gamePropertiesSCr =
SCR_DSGameProperties
.Cast(
game
.gameProperties);
47
48
if
(gamePropertiesSCr)
49
{
50
gamePropertiesSCr.battlEye =
SCR_JsonApiStructHandler
.
StringToBool
(
FindValue
(
"battlEye"
));
51
gamePropertiesSCr.disableThirdPerson =
SCR_JsonApiStructHandler
.
StringToBool
(
FindValue
(
"disableThirdPerson"
));
52
gamePropertiesSCr.VONDisableUI =
SCR_JsonApiStructHandler
.
StringToBool
(
FindValue
(
"VONDisableUI"
));
53
gamePropertiesSCr.VONDisableDirectSpeechUI =
SCR_JsonApiStructHandler
.
StringToBool
(
FindValue
(
"VONDisableDirectSpeechUI"
));
54
gamePropertiesSCr.VONCanTransmitCrossFaction =
SCR_JsonApiStructHandler
.
StringToBool
(
FindValue
(
"VONCanTransmitCrossFaction"
));
55
gamePropertiesSCr.serverMaxViewDistance =
StringToNumber
(
FindValue
(
"serverMaxViewDistance"
));
56
gamePropertiesSCr.networkViewDistance =
StringToNumber
(
FindValue
(
"networkViewDistance"
));
57
gamePropertiesSCr.serverMinGrassDistance =
StringToNumber
(
FindValue
(
"serverMinGrassDistance"
));
58
}
59
60
// Scenario
61
game
.scenarioId =
FindValue
(
"scenarioId"
);
62
63
// Mods
64
game
.mods = modList;
65
66
/*if (!game.name.IsEmpty())
67
m_sConfigName = game.name; */
68
69
// Scenario mod
70
if
(scenarioMod)
71
{
72
game
.hostedScenarioModId = scenarioMod.Id();
73
74
// Check mod in list
75
bool
inList =
false
;
76
77
for
(
int
i = 0, count =
game
.mods.Count(); i < count; i++)
78
{
79
if
(
game
.mods[i].modId == scenarioMod.Id())
80
{
81
inList =
true
;
82
break
;
83
}
84
}
85
86
// Add to the list
87
if
(!inList)
88
{
89
DSMod
scenarioDSMod =
new
DSMod
();
90
scenarioDSMod.modId = scenarioMod.Id();
91
scenarioDSMod.name = scenarioMod.Name();
92
scenarioDSMod.version = scenarioMod.GetActiveRevision().GetVersion();
93
94
95
game
.mods.Insert(scenarioDSMod);
96
}
97
}
98
99
// Join queue
100
operating
.joinQueue.maxSize =
StringToNumber
(
FindValue
(
"joinQueueMaxSize"
));
101
}
102
103
//------------------------------------------------------------------------------------------------
104
string
GetConfigName
()
105
{
106
string
name =
FindValue
(
"fileName"
);
107
if
(name !=
""
)
108
return
name;
109
110
name =
FindValue
(
"name"
);
111
if
(name !=
""
)
112
return
name;
113
114
return
DEFAULT_FILE_NAME
;
115
}
116
117
//------------------------------------------------------------------------------------------------
118
// Protected
119
//------------------------------------------------------------------------------------------------
120
121
//------------------------------------------------------------------------------------------------
123
protected
string
FindValue
(
string
propertyName,
string
groupTag =
""
)
124
{
125
string
nameTrimmed =
""
;
126
127
for
(
int
i = 0, count =
m_aDSConfigEntries
.Count(); i < count; i++)
128
{
129
nameTrimmed =
m_aDSConfigEntries
[i].GetPropertyName();
130
nameTrimmed = nameTrimmed.Trim();
131
132
if
(groupTag ==
""
)
133
{
134
// Has given property name
135
if
(nameTrimmed == propertyName)
136
return
m_aDSConfigEntries
[i].ValueAsString();
137
}
138
else
139
{
140
// Has propery and group
141
if
(nameTrimmed == propertyName &&
m_aDSConfigEntries
[i].GetGroupTag() == groupTag)
142
return
m_aDSConfigEntries
[i].ValueAsString();
143
}
144
}
145
146
return
""
;
147
}
148
149
//------------------------------------------------------------------------------------------------
150
protected
float
StringToNumber
(
string
str)
151
{
152
if
(str.IsEmpty())
153
return
0;
154
155
return
str.ToFloat();
156
}
157
}
158
159
//------------------------------------------------------------------------------------------------
160
class
SCR_DSGameProperties
: DSGameProperties
161
{
162
bool
disableThirdPerson
=
false
;
163
bool
VONDisableUI
=
false
;
164
bool
VONDisableDirectSpeechUI
=
false
;
165
bool
VONCanTransmitCrossFaction
=
false
;
166
float
serverMaxViewDistance
= 0.0;
167
int
networkViewDistance
= 0;
168
int
serverMinGrassDistance
= 0;
169
170
//------------------------------------------------------------------------------------------------
171
void
SCR_DSGameProperties
()
172
{
173
RegV(
"serverMaxViewDistance"
);
174
RegV(
"networkViewDistance"
);
175
RegV(
"serverMinGrassDistance"
);
176
}
177
178
//------------------------------------------------------------------------------------------------
179
override
void
OnPack
()
180
{
181
super.OnPack();
182
183
UnregV(
"disableThirdPerson"
);
184
StoreBoolean(
"disableThirdPerson"
,
disableThirdPerson
);
185
UnregV(
"VONDisableUI"
);
186
StoreBoolean(
"VONDisableUI"
,
VONDisableUI
);
187
UnregV(
"VONDisableDirectSpeechUI"
);
188
StoreBoolean(
"VONDisableDirectSpeechUI"
,
VONDisableDirectSpeechUI
);
189
UnregV(
"VONCanTransmitCrossFaction"
);
190
StoreBoolean(
"VONCanTransmitCrossFaction"
,
VONCanTransmitCrossFaction
);
191
}
192
193
//------------------------------------------------------------------------------------------------
194
override
void
OnExpand
()
195
{
196
RegV(
"disableThirdPerson"
);
197
RegV(
"VONDisableUI"
);
198
RegV(
"VONDisableDirectSpeechUI"
);
199
RegV(
"VONCanTransmitCrossFaction"
);
200
}
201
}
202
203
class
SCR_DSOperating :
JsonApiStruct
204
{
205
int
slotReservationTimeout = 60;
206
ref
SCR_DSJoinQueue
joinQueue;
207
208
//------------------------------------------------------------------------------------------------
209
void
SCR_DSOperating()
210
{
211
RegV(
"slotReservationTimeout"
);
212
213
joinQueue =
new
SCR_DSJoinQueue
();
214
RegV(
"joinQueue"
);
215
}
216
}
217
218
class
SCR_DSJoinQueue
:
JsonApiStruct
219
{
220
int
maxSize
;
221
222
//------------------------------------------------------------------------------------------------
223
void
SCR_DSJoinQueue
()
224
{
225
RegV(
"maxSize"
);
226
}
227
}
publicPort
int publicPort
Definition
DSConfig.c:79
DSConfig
void DSConfig()
Definition
DSConfig.c:83
publicAddress
string publicAddress
Definition
DSConfig.c:78
bindAddress
DSMod bindAddress
bindPort
int bindPort
Definition
DSConfig.c:76
game
ref DSGameConfig game
Definition
DSConfig.c:81
OnPack
override void OnPack()
Definition
SCR_ContentBrowser_AddonsSubMenu.c:1677
SCR_DSJoinQueue
void SCR_DSJoinQueue()
Definition
SCR_DSConfig.c:223
maxSize
SCR_DSOperating maxSize
networkViewDistance
int networkViewDistance
Definition
SCR_DSConfig.c:167
serverMaxViewDistance
float serverMaxViewDistance
Definition
SCR_DSConfig.c:166
disableThirdPerson
SCR_DSConfig disableThirdPerson
VONCanTransmitCrossFaction
bool VONCanTransmitCrossFaction
Definition
SCR_DSConfig.c:165
VONDisableDirectSpeechUI
bool VONDisableDirectSpeechUI
Definition
SCR_DSConfig.c:164
VONDisableUI
bool VONDisableUI
Definition
SCR_DSConfig.c:163
SCR_DSGameProperties
void SCR_DSGameProperties()
Definition
SCR_DSConfig.c:171
serverMinGrassDistance
int serverMinGrassDistance
Definition
SCR_DSConfig.c:168
OnExpand
override void OnExpand()
Definition
ServerBrowserMenuCallbacks.c:60
DSGameConfig
Definition
DSConfig.c:2
DSMod
Definition
DSConfig.c:60
JsonApiStruct
base classes for filtering in server browser
Definition
SCR_FeedbackDialogUI.c:3
SCR_DSConfig::SCR_DSConfig
void SCR_DSConfig()
Definition
SCR_DSConfig.c:14
SCR_DSConfig::StoreFullJson
void StoreFullJson(array< ref SCR_WidgetListEntry > entries, array< ref DSMod > modList, WorkshopItem scenarioMod)
Store all json values by groups.
Definition
SCR_DSConfig.c:27
SCR_DSConfig::FindValue
string FindValue(string propertyName, string groupTag="")
Return value as string by property name.
Definition
SCR_DSConfig.c:123
SCR_DSConfig::DEFAULT_FILE_NAME
const string DEFAULT_FILE_NAME
Definition
SCR_DSConfig.c:7
SCR_DSConfig::GetConfigName
string GetConfigName()
Definition
SCR_DSConfig.c:104
SCR_DSConfig::m_aDSConfigEntries
ref array< ref SCR_WidgetListEntry > m_aDSConfigEntries
Definition
SCR_DSConfig.c:9
SCR_DSConfig::operating
ref SCR_DSOperating operating
Definition
SCR_DSConfig.c:11
SCR_DSConfig::StringToNumber
float StringToNumber(string str)
Definition
SCR_DSConfig.c:150
SCR_DSOperating
Definition
SCR_DSConfig.c:204
SCR_JsonApiStructHandler
Handler for json api struct values.
Definition
SCR_JsonApiStructHandler.c:9
SCR_JsonApiStructHandler::StringToBool
static bool StringToBool(string str)
Definition
SCR_JsonApiStructHandler.c:63
WorkshopItem
Workshop Item instance.
Definition
WorkshopItem.c:14
scripts
Game
UI
Menu
ServerBrowser
ServerHosting
SCR_DSConfig.c
Generated by
1.17.0