Вот тебе один из вариантов сделать самому в миссии места перезарядки и ремонта любой техники -
1) В папке с миссией создай фаил скрипта с раширением ".sqf" (например reload.sqf)
2) Пропиши в созданном файле следующий скрипт :
_object = _this;
_type = typeOf _object;
x_reload_time_factor = 0.01;
_object setVehicleAmmo 1;
_object vehicleChat format ["Servicing %1... Please stand by...", _type];
_magazines = getArray(configFile >> "CfgVehicles" >> _type >> "magazines");
if (count _magazines > 0) then {
_removed = [];
{
if (!(_x in _removed)) then {
_object removeMagazines _x;
_removed = _removed + [_x];
};
} forEach _magazines;
{
_object vehicleChat format ["Reloading %1", _x];
sleep x_reload_time_factor;
_object addMagazine _x;
} forEach _magazines;
};
_count = count (configFile >> "CfgVehicles" >> _type >> "Turrets");
if (_count > 0) then {
for "_i" from 0 to (_count - 1) do {
scopeName "xx_reload2_xx";
_config = (configFile >> "CfgVehicles" >> _type >> "Turrets") select _i;
_magazines = getArray(_config >> "magazines");
_removed = [];
{
if (!(_x in _removed)) then {
_object removeMagazines _x;
_removed = _removed + [_x];
};
} forEach _magazines;
{
_object vehicleChat format ["Reloading %1", _x];
sleep x_reload_time_factor;
_object addMagazine _x;
sleep x_reload_time_factor;
} forEach _magazines;
_count_other = count (_config >> "Turrets");
if (_count_other > 0) then {
for "_i" from 0 to (_count_other - 1) do {
_config2 = (_config >> "Turrets") select _i;
_magazines = getArray(_config2 >> "magazines");
_removed = [];
{
if (!(_x in _removed)) then {
_object removeMagazines _x;
_removed = _removed + [_x];
};
} forEach _magazines;
{
_object vehicleChat format ["Reloading %1", _x];
sleep x_reload_time_factor;
_object addMagazine _x;
sleep x_reload_time_factor;
} forEach _magazines;
};
};
};
};
_object setVehicleAmmo 1; // Reload turrets / drivers magazine
sleep x_reload_time_factor;
_object vehicleChat "Repairing...";
_object setDamage 0;
sleep x_reload_time_factor;
_object vehicleChat "Refueling...";
while {fuel _object < 0.99} do {
//_object setFuel ((fuel _vehicle + 0.1) min 1);
_object setFuel 1;
sleep 0.01;
};
sleep x_reload_time_factor;
_object vehicleChat format ["%1 is ready...", _type];
if (true) exitWith {};
3) Дальше в самом редакторе в нужной тебе миссии, в нужных тебе местах (это будут места перезарядки) поставь на карте триггер(ы) (форму и размеры триггера по желанию - Например круга 10х10 хватит вполне)
4) В верхнем поле активации триггера выбирай нужную тебе сторону (синие, красные, независимые или гражданские - триггер будет срабатывать на выбранную тобой сторону)
5) Ниже поставь параметр - ПОВТОРНО
6) Ниже поставь параметр - Существует
7) В поле УСЛОВИЕ пропиши:
("AllVehicles" countType thislist > 0) && ((getpos (thislist select 0)) select 2 < 1)
Ниже в поле АКТИВАЦИЯ пропиши:
_xhandle= (thislist select 0) execVM "ИМЯ ТВОЕГО СКРИПТА В ПАПКЕ С МИССИЕЙ.sqf";
В данном случае -
_xhandle= (thislist select 0) execVM "reload.sqf";
Ну и всё. Поверх триггеров для наглядности можешь поставить вертолётную площадку, Триггеры можешь размножить в нескольких нужных тебе местах на карте.