From 604e8514230147143009995cddc6068c3080792b Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Fri, 3 Apr 2015 14:37:04 -0500 Subject: [PATCH] Medical - isBeingCarried --- addons/dragging/functions/fnc_startCarry.sqf | 7 ++--- addons/medical/XEH_preInit.sqf | 1 + .../medical/functions/fnc_isBeingCarried.sqf | 26 +++++++++++++++++++ .../medical/functions/fnc_isBeingDragged.sqf | 2 +- 4 files changed, 32 insertions(+), 4 deletions(-) create mode 100644 addons/medical/functions/fnc_isBeingCarried.sqf diff --git a/addons/dragging/functions/fnc_startCarry.sqf b/addons/dragging/functions/fnc_startCarry.sqf index 9f1c0bca23..ff201afb02 100644 --- a/addons/dragging/functions/fnc_startCarry.sqf +++ b/addons/dragging/functions/fnc_startCarry.sqf @@ -56,11 +56,12 @@ if (_target isKindOf "CAManBase") then { [_unit, "isDragging", true] call EFUNC(common,setforceWalkStatus); - // prevent multiple players from accessing the same object - [_unit, _target, true] call EFUNC(common,claim); - }; +// prevent multiple players from accessing the same object +[_unit, _target, true] call EFUNC(common,claim); + + // prevents draging and carrying at the same time _unit setVariable [QGVAR(isCarrying), true, true]; diff --git a/addons/medical/XEH_preInit.sqf b/addons/medical/XEH_preInit.sqf index 1d773b51ac..08c26b2164 100644 --- a/addons/medical/XEH_preInit.sqf +++ b/addons/medical/XEH_preInit.sqf @@ -49,6 +49,7 @@ PREP(hasItems); PREP(hasMedicalEnabled); PREP(hasTourniquetAppliedTo); PREP(init); +PREP(isBeingCarried); PREP(isBeingDragged); PREP(isInMedicalFacility); PREP(isMedic); diff --git a/addons/medical/functions/fnc_isBeingCarried.sqf b/addons/medical/functions/fnc_isBeingCarried.sqf new file mode 100644 index 0000000000..6505f8b51a --- /dev/null +++ b/addons/medical/functions/fnc_isBeingCarried.sqf @@ -0,0 +1,26 @@ +/* + * Author: PabstMirror + * Returns if a target is being carried. (from ace_dragging) + * + * Arguments: + * 0: Target Unit + * + * Return Value: + * Is being carried + * + * Example: + * [bob] call ace_medical_fnc_isBeingCarried + * + * Public: No + */ +#include "script_component.hpp" + +PARAMS_1(_target); + +private "_owner"; + +_owner = _target getVariable [QEGVAR(common,owner), objNull]; + +if (isNull _owner) exitWith {false}; + +(_owner getVariable [QEGVAR(dragging,carriedObject), objNull]) == _target diff --git a/addons/medical/functions/fnc_isBeingDragged.sqf b/addons/medical/functions/fnc_isBeingDragged.sqf index 4dbb44f4f2..4d09ed9e29 100644 --- a/addons/medical/functions/fnc_isBeingDragged.sqf +++ b/addons/medical/functions/fnc_isBeingDragged.sqf @@ -1,6 +1,6 @@ /* * Author: PabstMirror - * Returns if a target is being dragged. + * Returns if a target is being dragged. (from ace_dragging) * * Arguments: * 0: Target Unit