При написании скриптов загорелся идеей создать скрипт на открытие и закрытие техники, но столкнулся с проблемой, что не могу зациклить цикл так чтобы одно действие (addAction) появлялось, а другое исчезало, подскажите как это сделать, внизу код с описанием строк в нем.
/* 0 = [] execVM "addAction.sqf"; */
respMash addAction ["<t color='#00FF00'>Развернуть КШМ</t>",
{
myResp = [west, "respMash"] call BIS_fnc_addRespawnPosition;//Создает точку респауна в технике
player addEventHandler ["GetInMan",//Создаем событие GetInMan - если человек внутри
{
["respMash","player"];//Параметры GetInMan = true
player moveOut respMash;//Действие при true. Высадится игроку
}];
respMash setVehicleLock "LOCKED";//Полностью блокирует технику
hint parseText "<t size='2.0'>КШМ РАЗВЕРНУТ</t>";//Выводит хинт
respMash removeAction 0;//удаляет строчку экшена Развернуть КШМ
respMash addAction ["<t color='#FF0000'>Свернуть КШМ</t>",//Параметры addAction Свернуть КШМ
{
myResp = [west, 0] call BIS_fnc_removeRespawnPosition;//Удаляем точку респауна в технике
respMash setVehicleLock "UNLOCKED";//Полностью разблокируем технику технику
player removeAllEventHandlers "GetInMan";
hint parseText "<t size='2.0'>КШМ СВЕРНУТ</t>";//Выводит хинт
respMash removeAction 1;
},
nil, 1.5, true, true, "", "", 5];//Параметры addAction Свернуть КШМ
player moveOut respMash;//Высадится игроку если он телепортируется в respMash = машина
},
nil, 1.5, true, true, "", "", 5];//Параметры addAction Развернуть КШМ
respMash addEventHandler ["Killed",//Событие при котором техника уничтожена
{
myResp = [west, 0] call BIS_fnc_removeRespawnPosition;
respMash removeAction 0;
respMash removeAction 1;
}];
Сообщение отредактировал STEAL92: 05 May 2024 - 20:20