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;