From c0b9a31debc4716a13d61f58d073ee84dbeaf821 Mon Sep 17 00:00:00 2001 From: Tim Beswick Date: Mon, 18 Jun 2018 21:01:09 +0100 Subject: [PATCH] Cargo load ignore interaction distance parameter (#6395) * Added force parameter to cargo load * Specifically ignore interaction distance * Fixed old brackets * Removed old trace --- addons/cargo/functions/fnc_canLoadItemIn.sqf | 5 +++-- addons/cargo/functions/fnc_loadItem.sqf | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/addons/cargo/functions/fnc_canLoadItemIn.sqf b/addons/cargo/functions/fnc_canLoadItemIn.sqf index 8780689241..7d5d98dc0c 100644 --- a/addons/cargo/functions/fnc_canLoadItemIn.sqf +++ b/addons/cargo/functions/fnc_canLoadItemIn.sqf @@ -5,6 +5,7 @@ * Arguments: * 0: Item * 1: Holder Object (Vehicle) + * 2: Ignore interaction distance * * Return Value: * Can load in @@ -16,7 +17,7 @@ */ #include "script_component.hpp" -params [["_item", "", [objNull,""]], "_vehicle"]; +params [["_item", "", [objNull,""]], "_vehicle", ["_ignoreInteraction", false]]; if (speed _vehicle > 1 || {((getPos _vehicle) select 2) > 3}) exitWith {TRACE_1("vehicle not stable",_vehicle); false}; @@ -34,7 +35,7 @@ if (_item isEqualType "") then { } else { _validItem = (alive _item) && - {([_item, _vehicle] call EFUNC(interaction,getInteractionDistance)) < MAX_LOAD_DISTANCE}; + {_ignoreInteraction || {([_item, _vehicle] call EFUNC(interaction,getInteractionDistance)) < MAX_LOAD_DISTANCE}}; }; _validItem && diff --git a/addons/cargo/functions/fnc_loadItem.sqf b/addons/cargo/functions/fnc_loadItem.sqf index f8b00478e6..cb4772b791 100644 --- a/addons/cargo/functions/fnc_loadItem.sqf +++ b/addons/cargo/functions/fnc_loadItem.sqf @@ -6,6 +6,7 @@ * Arguments: * 0: Item * 1: Vehicle + * 2: Ignore interaction distance * * Return Value: * Object loaded @@ -17,10 +18,10 @@ */ #include "script_component.hpp" -params [["_item","",[objNull,""]], ["_vehicle",objNull,[objNull]]]; +params [["_item","",[objNull,""]], ["_vehicle",objNull,[objNull]], ["_ignoreInteraction", false]]; TRACE_2("params",_item,_vehicle); -if !([_item, _vehicle] call FUNC(canLoadItemIn)) exitWith {TRACE_2("cannot load",_item,_vehicle); false}; +if !([_item, _vehicle, _ignoreInteraction] call FUNC(canLoadItemIn)) exitWith {TRACE_2("cannot load",_item,_vehicle); false}; private _loaded = _vehicle getVariable [QGVAR(loaded), []]; _loaded pushBack _item;