Добрый деть у меня близкий вопрос, задам сюда, что бы тему не создавать.
Пробую сделать скрипт починки техники в триггере для мультиплеера.
Код функции вызываемой при активации триггера:
//[thisList] - получаем список активаторов
if (isServer) then { //СКРИПТ ТОЛЬКО ДЛЯ СЕРВЕРА!
_objectsArray = _this select 0; //массив объектов внутри триггера
//получаем массив игроков внутри триггера
{
if (isPlayer _x) then { //если объект игрок
if (vehicle _x != _x) then { //если игрок в технике
_str = format["Игрок в технике! Damage = %1", getDammage (vehicle _x)];
[_str,"systemChat",true,false] call BIS_fnc_MP;
(vehicle _x) setDamage 0;
};
};
} forEach _objectsArray;
};
Так вот if (vehicle _x != _x) дает все время ложь, то есть vehicle возвращает не технику а сам проверяемый аргумент _x.
Вот я не пойму vehicle работает только есть техника и игрок локальны на компьютере или как?
Как с сервера определить сидит ли игрок в технике???