Captives - Add modded cable tie support (#9350)

* Update fnc_canApplyHandcuffs.sqf

* Update fnc_canApplyHandcuffs.sqf

* Update fnc_doApplyHandcuffs.sqf

* Update XEH_preStart.sqf

* Update fnc_doApplyHandcuffs.sqf

* Update fnc_canApplyHandcuffs.sqf

* Update XEH_preInit.sqf

* Update fnc_doApplyHandcuffs.sqf

stray bracket

* Update addons/captives/XEH_preStart.sqf

Co-authored-by: Grim <69561145+LinkIsGrim@users.noreply.github.com>

* Update CfgWeapons.hpp

* Update CfgWeapons.hpp

* Update fnc_canApplyHandcuffs.sqf

* Change to restraints

Update XEH_preInit.sqf

* Update XEH_preStart.sqf

* Update fnc_canApplyHandcuffs.sqf

* Update fnc_doApplyHandcuffs.sqf

* Update CfgWeapons.hpp

---------

Co-authored-by: Grim <69561145+LinkIsGrim@users.noreply.github.com>
This commit is contained in:
Will/KJW 2023-08-30 22:03:44 +01:00 committed by GitHub
parent bee0362921
commit c88695fb82
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 10 additions and 2 deletions

View File

@ -4,6 +4,7 @@ class CfgWeapons {
class ACE_CableTie: ACE_ItemCore { class ACE_CableTie: ACE_ItemCore {
author = ECSTRING(common,ACETeam); author = ECSTRING(common,ACETeam);
GVAR(restraint) = 1;
displayName = CSTRING(CableTie); displayName = CSTRING(CableTie);
descriptionShort = CSTRING(CableTieDescription); descriptionShort = CSTRING(CableTieDescription);
model = QPATHTOF(models\ace_cabletie.p3d); model = QPATHTOF(models\ace_cabletie.p3d);

View File

@ -8,6 +8,8 @@ PREP_RECOMPILE_END;
GVAR(captivityEnabled) = false; GVAR(captivityEnabled) = false;
GVAR(restraints) = call (uiNamespace getVariable QGVAR(restraints));
#include "initSettings.sqf" #include "initSettings.sqf"
ADDON = true; ADDON = true;

View File

@ -1,3 +1,6 @@
#include "script_component.hpp" #include "script_component.hpp"
#include "XEH_PREP.hpp" #include "XEH_PREP.hpp"
private _restraints = (QUOTE(getNumber (_x >> QQGVAR(restraint)) > 0) configClasses (configFile >> "CfgWeapons") apply {configName _x});
uiNamespace setVariable [QGVAR(restraints), compileFinal str _restraints];

View File

@ -20,7 +20,7 @@ params ["_unit", "_target"];
//Check sides, Player has cableTie, target is alive and not already handcuffed //Check sides, Player has cableTie, target is alive and not already handcuffed
(GVAR(allowHandcuffOwnSide) || {(side _unit) != (side _target)}) && (GVAR(allowHandcuffOwnSide) || {(side _unit) != (side _target)}) &&
{"ACE_CableTie" in (_unit call EFUNC(common,uniqueItems))} && {((_unit call EFUNC(common,uniqueItems)) findAny GVAR(restraints)) != -1} &&
{alive _target} && {alive _target} &&
{!(_target getVariable [QGVAR(isHandcuffed), false])} && {!(_target getVariable [QGVAR(isHandcuffed), false])} &&
{ {

View File

@ -23,4 +23,6 @@ playSound3D [QUOTE(PATHTO_R(sounds\cable_tie_zipping.ogg)), objNull, false, (get
[QGVAR(setHandcuffed), [_target, true, _unit], [_target]] call CBA_fnc_targetEvent; [QGVAR(setHandcuffed), [_target, true, _unit], [_target]] call CBA_fnc_targetEvent;
_unit removeItem "ACE_CableTie"; private _cuffs = (_unit call EFUNC(common,uniqueItems)) arrayIntersect GVAR(restraints);
_unit removeItem (_cuffs#0);