From 95ec2ea1f99efcfeeec439684dee17b5397f6819 Mon Sep 17 00:00:00 2001 From: jonpas <jonpas33@gmail.com> Date: Mon, 8 Jun 2015 23:39:14 +0200 Subject: [PATCH] Added isNotSitting exception, Renamed sitting QGVAR --- addons/sitting/CfgEventHandlers.hpp | 7 +++++++ addons/sitting/XEH_clientInit.sqf | 3 +++ addons/sitting/functions/fnc_canStand.sqf | 4 ++-- addons/sitting/functions/fnc_sit.sqf | 2 +- addons/sitting/functions/fnc_stand.sqf | 2 +- 5 files changed, 14 insertions(+), 4 deletions(-) create mode 100644 addons/sitting/XEH_clientInit.sqf diff --git a/addons/sitting/CfgEventHandlers.hpp b/addons/sitting/CfgEventHandlers.hpp index b928bc2de6..c19217fb29 100644 --- a/addons/sitting/CfgEventHandlers.hpp +++ b/addons/sitting/CfgEventHandlers.hpp @@ -3,3 +3,10 @@ class Extended_PreInit_EventHandlers { init = QUOTE(call COMPILE_FILE(XEH_preInit)); }; }; + + +class Extended_PostInit_EventHandlers { + class ADDON { + clientInit = QUOTE(call COMPILE_FILE(XEH_clientInit)); + }; +}; diff --git a/addons/sitting/XEH_clientInit.sqf b/addons/sitting/XEH_clientInit.sqf new file mode 100644 index 0000000000..bbe81b27c7 --- /dev/null +++ b/addons/sitting/XEH_clientInit.sqf @@ -0,0 +1,3 @@ +#include "script_component.hpp" + +["isNotSitting", {!((_this select 0) getVariable [QGVAR(isSitting), false])}] call EFUNC(common,addCanInteractWithCondition); diff --git a/addons/sitting/functions/fnc_canStand.sqf b/addons/sitting/functions/fnc_canStand.sqf index 1e862ecaea..4549b9891b 100644 --- a/addons/sitting/functions/fnc_canStand.sqf +++ b/addons/sitting/functions/fnc_canStand.sqf @@ -17,5 +17,5 @@ PARAMS_1(_player); -// If sitting -(_player getVariable [QGVAR(sitting),false]) +// Sitting +(_player getVariable [QGVAR(isSitting),false]) diff --git a/addons/sitting/functions/fnc_sit.sqf b/addons/sitting/functions/fnc_sit.sqf index 355da12613..0edaffb1a4 100644 --- a/addons/sitting/functions/fnc_sit.sqf +++ b/addons/sitting/functions/fnc_sit.sqf @@ -36,5 +36,5 @@ _player setPos (_seat modelToWorld _sitPosition); [_player, call FUNC(getRandomAnimation), 2] call EFUNC(common,doAnimation); // Set variables -_player setVariable [QGVAR(sitting), true]; +_player setVariable [QGVAR(isSitting), true]; _seat setVariable [QGVAR(seatOccupied), true, true]; // To prevent multiple people sitting on one seat diff --git a/addons/sitting/functions/fnc_stand.sqf b/addons/sitting/functions/fnc_stand.sqf index 673cb67ccc..df1ee6f169 100644 --- a/addons/sitting/functions/fnc_stand.sqf +++ b/addons/sitting/functions/fnc_stand.sqf @@ -21,6 +21,6 @@ PARAMS_1(_player); [_player, "", 2] call EFUNC(common,doAnimation); // Set variables to nil -_player setVariable [QGVAR(sitting), nil]; +_player setVariable [QGVAR(isSitting), nil]; GVAR(seat) setVariable [QGVAR(seatOccupied), nil, true]; GVAR(seat) = nil;