// by commy2 #include "script_component.hpp" private ["_unit", "_weapon"]; _unit = _this select 0; _weapon = _this select 1; if (_unit getVariable [QGVAR(isDragging), false]) then { // drop dragged object when selecting a non-primary weapon if (_weapon != primaryWeapon _unit) then { private "_draggedObject"; _draggedObject = _unit getVariable [QGVAR(draggedObject), objNull]; [_unit, _draggedObject] call FUNC(dropObject); }; }; if (_unit getVariable [QGVAR(isCarrying), false]) then { private "_carriedObject"; _carriedObject = _unit getVariable [QGVAR(carriedObject), objNull]; if (_carriedObject isKindOf "CAManBase") then { if (_weapon != primaryWeapon _unit) then { [_unit, _carriedObject] call FUNC(dropObject_carry); }; } else { // drop carried object when selecting any weapon if (_weapon != "") then { [_unit, _carriedObject] call FUNC(dropObject_carry); }; }; };