add an action to the ammo truck
unit addAction ["Take Laser Designator Magazine","takedesig.sqs"]
Then you can start your script with:
_unit = _this select 1
; _this select 1 is the unit that executed the action
#LDCheck
? (_unit hasWeapon "LaserDesignator") : _unit addMagazine "LaserDesignator"; exit
~1
goto "LDCheck"