Создайте в папке с миссией файл addActions.sqf
И скопируйте в него код
/* Добавляет юнитам экшен "Убрать оружие" auhtor: SteelRat */ _unit = _this; // Убрать оружие _unit addAction [localize "a3units_str_Hide_weapon", { _callerUnit = _this select 1; _callerUnit action ["SwitchWeapon", _callerUnit, _callerUnit, 100]; if !(primaryWeapon _callerUnit == "") then { _callerUnit setUserActionText [actionSelectPrimaryWeaponID, format ["%1 %2", localize "a3units_str_weapon", ((configfile/"CfgWeapons"/(primaryWeapon _callerUnit)/"displayName") call BIS_fnc_getCfgData)]]; }; }, "",0,false,true,"", "(_this == _target) && (vehicle _this == _this) && !(currentWeapon _this == '')" ]; // Добавить экшен выбирающий оружие размещённое в Primary weapon слоте actionSelectPrimaryWeaponID = _unit addAction ["", { _callerUnit = _this select 1; _callerUnit selectWeapon primaryWeapon _callerUnit; }, "",0,false,true,"", "(_this == _target) && (vehicle _this == _this) && (currentWeapon _this == '') && !(primaryWeapon _this == '')" ];
Создайте в папке с миссией файл локализации stringtable.xml , если его у вас ещё нет, и добавьте в него это
<?xml version="1.0" encoding="utf-8"?> <Project name="Arma3"> <Package name="A3UNITS"> <Container name="Action"> <Key ID="a3units_str_Hide_weapon"> <Original>Hide weapon</Original> <Russian>Убрать оружие</Russian> </Key> <Key ID="a3units_str_weapon"> <Original>Weapon</Original> <Russian>Оружие</Russian> </Key> </Container> </Package> </Project>
В инициализацию юнита которым будете управлять добавьте вызов кода
0 = this execVM "ПутьДоСкрипта\addActions.sqf"
или из init.sqf файла миссии
player execVM "ПутьДоСкрипта\addActions.sqf";
Так же вызов скрипта нужно добавить в код инициализируемый при респавне игрока и при переключении игрока на управление другим юнитом.
А если самому всё это делать в лом, вот готовый аддон
A3UNITS_0.3.rar 2.4К 432 Количество загрузок: