#include "script_component.hpp" /* * Author: PabstMirror * Gets effective interaction distance (handles very large vehicles) * * Arguments: * 0: Player * 0: Target Vehicle * * Return Value: * Distance to interaction point * * Example: * [player, cursorObject] call ace_interaction_fnc_getInteractionDistance * * Public: No */ params ["_unit", "_target"]; TRACE_3("getInteractionDistance",_unit,_target,typeOf _target); // Handle Man, Crate if (!((_target isKindOf "Car") || {_target isKindOf "Tank"} || {_target isKindOf "Helicopter"} || {_target isKindOf "Plane"} || {_target isKindOf "Ship_F"})) exitWith { _unit distance _target }; private _unitEyeASL = eyePos _unit; private _targetModelPos = [_target, _unitEyeASL] call FUNC(getVehiclePosComplex); private _distance = _unitEyeASL distance (_target modelToWorldWorld _targetModelPos); TRACE_2("",_targetModelPos,_distance); _distance