Site icon Mission design

Využití dat z konfigurace

Občas se může stát, že budeme chtít mít skript více univerzální bez větší vazby na používané addony. Stačí znát pár příkazů a postupů a používání dat z konfigurace bude pro vás hračkou. Zvláště teď, když je v Arma 3 prohlížeč konfigurace lehce dostupný přímo v editoru.

Pokud byste se například snažili napsat skript, který by přidával
libovolné jednotce (v příkladu použijeme lokální proměnnou _unit) jeden
zásobník a chtěli, aby skript byl univerzální, tak právě v tento moment
vám přijde vhod použití příkazů configFilegetArray.

Při zavolání configFile je totiž vrácen root třídy configu (isClass
vrací true) z něhož se pak za pomocí dotazů na jeho podzáznamy (>>)
a použitím příkazu pro zjištění názvu hlavní zbraně jednotky dá
dohledat konfigurační záznam oné zbraně.

Jeho podzáznam o zásobnících se pak za pomoci příkazu getArray
převede na pole, kdy na první pozici pak nalezneme hledaný název munice.

Výsledkem není nijak složitý skript:

_unit addMagazine (getArray(configFile>>"CfgWeapons">> (primaryWeapon _unit) >>"magazines") select 0);

Dalším příkladem může být třeba zjištění počtu dostupných míst
u vozidla jednotky (když si například hráč bude sám moci zvolit
vozidlo).

_space = getNumber (configFile >> "CfgVehicles" >> (typeOf vehicle _unit) >> "transportsoldier");

Vytvoření skupiny:

_grp1 = [getMarkerPos "Marker1", east, (configfile >> "CfgGroups" >> "East" >> "OPF_F" >> "Infantry" >> "OIA_InfSquad")] call BIS_fnc_spawnGroup;

A něco pro vlastní vyzkoušení:

getNumber(configFile >> "CfgWeapons" >> _weapon >> "type")

Pokud sami znáte nějak zajímavě využité volání konfigurace, tak
klidně přispějte do komentářů. Rád článek doplním.

Exit mobile version