Перейти к содержимому


Фотография

Как запретить любой action в технике


Лучший Ответ Denispetrov123 , 28 January 2022 - 23:14

В init.sqf:

inGameUISetEventHandler ["Action", "
	if (vehicle player != player && !(_this # 3 in ['Eject', 'GetOut', 'Gear'])) then { true }
"];
Перейти к сообщению


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 2

#1 OFFLINE   GSBcom

GSBcom

    Рядовой

  • Пользователи
  • 26 сообщений

Отправлено 27 January 2022 - 21:24

Товарищи, всем привет! Подскажите, как можно решить такую проблему: нужно как-то запретить игрокам использовать любые экшены в технике, ну или хотя бы запретить пересаживаться на другой слот или пилота, например.

На разного рода форумах говорят, что нужно "копать" в сторону EH, с его seatswith. Но не понимаю, как тут обработчик событий может помочь....

Еще нашел 1 скрипт, но он не рабочий:

params ["_unit"];

private _fnc_check = { params ["_unit"];

private _vehicle = vehicle _unit;

private _pilot = driver _vehicle; private _gunner = gunner _vehicle;

private _copilot = _vehicle turretUnit [0];

private _pilots = ["rhsusf_airforce_pilot","rhsusf_airforce_jetpilot","rhsusf_army_ocp_helipilot"];

private _crewmen = ["rhsusf_army_ocp_combatcrewman","rhsusf_army_ocp_crewman"];

private _planes = [ "rhs_l159_cdf_b_CDF","RHS_A10","rhsusf_f22","B_Plane_Fighter_01_F","rhs_l39_cdf_b_cdf", "rhsgred_hidf_cessna_o3a","RHS_C130J","RHS_AH1Z","rhsusf_CH53E_USMC_D","RHS_UH1Y_d", "RHS_MELB_MH6M","RHS_MELB_H6M","RHS_UH60M" ];

private _tanks = [ "rhsusf_m1a2sep1d_usarmy","rhsusf_m1a2sep1tuskiid_usarmy","rhsusf_m1a2sep1tuskid_usarmy", "RHS_M2A3_BUSKIII","RHS_M2A3_BUSKI","RHS_M2A2_BUSKI" ];

// handle planes if (_planes findIf {_x == typeOf _vehicle} != -1) then { if (_unit in [_pilot, _gunner, _copilot] && {_pilots findIf {_x == typeOf _unit} == -1}) then { systemChat "You are not authorized to operate this aircraft!"; moveOut _unit; }; };

// handle tanks if (_tanks findIf {_x == typeOf _vehicle} != -1) then { if (_unit in [_pilot, _gunner] && {_crewmen findIf {_x == typeOf _unit} == -1}) then { systemChat "You are not authorized to operate this vehicle!"; moveOut _unit; }; }; };

_unit addEventHandler ["GetInMan", _fnc_check];

_unit addEventHandler ["SeatSwitchedMan", _fnc_check];


  • 0

#2 OFFLINE   Denispetrov123

Denispetrov123

    Ефрейтор

  • Пользователи
  • 82 сообщений
  • Откуда:Москва

Отправлено 28 January 2022 - 23:14   Лучший Ответ

В init.sqf:

inGameUISetEventHandler ["Action", "
	if (vehicle player != player && !(_this # 3 in ['Eject', 'GetOut', 'Gear'])) then { true }
"];

Сообщение отредактировал Denispetrov123: 28 January 2022 - 23:20

  • 0

#3 OFFLINE   GSBcom

GSBcom

    Рядовой

  • Пользователи
  • 26 сообщений

Отправлено 29 January 2022 - 16:19

Спасибо большое! Все работает!


  • 0




Яндекс.Метрика