Создайте в папке с миссией файл 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К
433 Количество загрузок:











