mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
c54081d677
smaller `publicVariable`
51 lines
1.5 KiB
Plaintext
51 lines
1.5 KiB
Plaintext
/*
|
|
* Author: Glowbal
|
|
* Parse all settings and load the localized displayName and description for all text
|
|
*
|
|
* Arguments:
|
|
* None
|
|
*
|
|
* Return Value:
|
|
* None
|
|
*
|
|
* Public: No
|
|
*/
|
|
#include "script_component.hpp"
|
|
|
|
private ["_parseConfigForDisplayNames", "_name"];
|
|
|
|
_parseConfigForDisplayNames = {
|
|
private ["_optionEntry", "_values", "_text"];
|
|
_optionEntry = _this select 0;
|
|
if !(isClass _optionEntry) exitwith {false};
|
|
_values = getArray (_optionEntry >> "values");
|
|
_x set [3, getText (_optionEntry >> "displayName")];
|
|
_x set [4, getText (_optionEntry >> "description")];
|
|
_x set [5, _values];
|
|
_x set [8, getText (_optionEntry >> "category")];
|
|
|
|
{
|
|
_text = _x;
|
|
if (((typeName _text) == "STRING") && {(count _text) > 1} && {(_text select [0,1]) == "$"}) then {
|
|
_text = localize (_text select [1, ((count _text) - 1)]); //chop off the leading $
|
|
_values set [_forEachIndex, _text];
|
|
};
|
|
} forEach _values;
|
|
true;
|
|
};
|
|
|
|
|
|
// Iterate through settings
|
|
{
|
|
_name = _x select 0;
|
|
|
|
if !([configFile >> "ACE_Settings" >> _name] call _parseConfigForDisplayNames) then {
|
|
if !([configFile >> "ACE_ServerSettings" >> _name] call _parseConfigForDisplayNames) then {
|
|
if !([missionConfigFile >> "ACE_Settings" >> _name] call _parseConfigForDisplayNames) then {
|
|
diag_log text format ["[ACE] - Setting found, but couldn't localize [%1] (server has but we don't?)", _name];
|
|
};
|
|
};
|
|
};
|
|
|
|
} forEach GVAR(settings);
|