Перейти к содержимому

Добро пожаловать на ФОРУМ AIMGAME
Зарегистрируйтесь, чтобы получить доступ к важным темам и разделам форума...
Войти Зарегистрироваться
Фотография

Скрипт ARMA3: Получение списка классов всей техники/униформы/жилетов/шлемов

скрипт классы

  • Авторизуйтесь для ответа в теме
В этой теме нет ответов

#1
exploadead

exploadead

    Президент

  • Администраторы
  • 1 321 сообщений

Получение списка классов всей техники/униформы/жилетов/шлемов. (включая модовскую)

Getting classes list of all vehicles/equipment/vests/helmets.

 

При работе с конфигами серверов, прописывании в них вещей и объектов, часто требуется собрать список всех классов вещей по категориям...
Кликать вручную в виртуальном арсенале или ставить технику в редакторе и копировать классы - это крайне долго и нудно.
Есть гораздо более быстрые и эффективные способы получить к себе в буфер обмена полные списки классов техники, экипировки и тд. Вот они:

 

Вывод в буфер всей наземной техники:

_configs = "getNumber (_x » 'scope') >= 2 AND configName _x isKindof 'Car'" configClasses (configFile » "CfgVehicles");
_classNames = _configs apply {configName _x};
copyToClipBoard str _classNames;
hint str _classNames;

Вывод в буфер всей авиа техники:

_configs = "getNumber (_x » 'scope') >= 2 AND configName _x isKindof 'Air'" configClasses (configFile » "CfgVehicles");
_classNames = _configs apply {configName _x};
copyToClipBoard str _classNames;
hint str _classNames;

Выводить можно и отдельно самолеты - Planes, вертолёты - Helicopters, и тд. Список всех базовых классов тут - https://forums.bohem...e-base-classes/

 

 

Вывод всех рюкзаков:

// maximumLoad != 0 removes backpacks for weapons (e.g. static weapons).

_backpacksConfigs = "(
getNumber ( _x » ""scope"" ) == 2
&& {
getNumber ( _x » ""isbackpack"" ) isEqualTo 1
&& {
getNumber ( _x » ""maximumLoad"" ) != 0
}})" configClasses ( configFile » "cfgVehicles");

_backpacks = [];
{
_bp = (configName _x) call BIS_fnc_basicBackpack;
_backpacks pushback _bp;
} forEach _backpacksConfigs;
_names = [];
{
_name = _x;
_names pushBack _name;
_weight = (getNumber (configFile » "CfgVehicles" » _name » "mass"));
_load = (getNumber (configFile » "CfgVehicles" » _name » "maximumLoad"));
} forEach _backpacks;

copyToClipBoard str _names;
hint str _names;

Вывод всех жилетов:

_itemFilter = "
( getNumber ( _x » ""scope"" ) isEqualTo 2
&&
{ getText ( _x » ""simulation"" ) isEqualTo ""Weapon""
&&
{ getNumber ( _x » ""type"" ) isEqualTo 131072
&&
{ getNumber ( _x » ""ItemInfo"" » ""type"" ) isEqualTo %1
} } })";

_allVests = (format [_itemFilter, 701]) configClasses ( configFile » "cfgWeapons" );
_names = [];
{
_name = configName (_x);
_names pushBack _name;
_weight = (getNumber (configFile » "CfgWeapons" » _name » "ItemInfo" » "mass"));
_armor = (getNumber (configFile » "CfgWeapons" » _name » "ItemInfo" » "HitpointsProtectionInfo" » "Head" » "armor"));
} forEach _allVests;

hint str _names;
copyToClipboard str _names;

Вывод всех шлемов:

_itemFilter = "
( getNumber ( _x » ""scope"" ) isEqualTo 2
&&
{ getText ( _x » ""simulation"" ) isEqualTo ""Weapon""
&&
{ getNumber ( _x » ""type"" ) isEqualTo 131072
&&
{ getNumber ( _x » ""ItemInfo"" » ""type"" ) isEqualTo %1
} } })";

_allHelmets = (format [_itemFilter, 605]) configClasses ( configFile » "cfgWeapons" );
_names = [];
{
_name = configName (_x);
_names pushBack _name;
_weight = (getNumber (configFile » "CfgWeapons" » _name » "ItemInfo" » "mass"));
_armor = (getNumber (configFile » "CfgWeapons" » _name » "ItemInfo" » "HitpointsProtectionInfo" » "Head" » "armor"));
} forEach _allHelmets;

hint str _names;
copyToClipboard str _names;

Вывод всей униформы:

_configs = "getNumber (_x >> 'scope') >= 2 AND getText ( _x >> 'simulation' ) isEqualTo 'Weapon'" configClasses (configFile >> "CfgWeapons"); 
_classNames = _configs apply {configName _x}; 
_names = []; 
{ 
_isUni = (_x call BIS_fnc_itemType) select 1; 
if (_isUni == "Uniform") then 
{ 
_names pushBack _x; 
};  
} forEach _classNames; 
 
copyToClipBoard str _names; 
hint str _names;






Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных