That's relativly easy if you're just using an ammo crate. You can basically drop the ammo crate out of the helicopter by spawning it, or from a higher pos, parachuting it. Let me go search my HD. I have a script I created for something like that...
Ah, here it is...
;Written by Tyger
;Operation Flashpoint: Resistance v1.96 script
;Use at your own risk. This file was only intended for the mission it was in.
;This file is open source. All I ask is you give credit where it is due.
;ratelo_ammo.sqs
;Define position and shift
_pos = _this select 0
_shift = _this select 1
;Check if shift was used
? !(_shift) : Hint "You did not use shift when clicking. Ammo resupply canceled."; exit
? called_ammo > 2 : Hint "You have no remaining Ammo drops to use."; exit
called_ammo = called_ammo + 1
~30
;Create Parachute/Ammo Box/Game Logic
_ammobox = "ReammoBoxWest" createVehicle [0,0,0]
_parachute = "Parachute" camCreate [(_pos select 0) + 2,(_pos select 1) + 10, 0]
_parachute setdir random 360
_logic = "Logic" camCreate [0,0,0]
_logic moveInDriver _parachute
;Ammo Crates Follow Parachutes
#ParaLoop
_parachute setVelocity [(velocity _parachute select 0) / 1.1, (velocity _parachute select 1) / 1.1, -6]
_ammobox setPos [getPos _logic select 0, getPos _logic select 1, (getPos _logic select 2) + 1]
_ammobox setdir getdir _logic
~0.01
? vehicle _logic != _logic : goto "ParaLoop"
_ammobox setPos [getPos _ammobox select 0, getPos _ammobox select 1, 0]
deleteVehicle _logic
[_ammobox] exec "Dialogs\AmmoFill.sqs"
_smoke = "SmokeShellGreen" camCreate [getpos _ammobox select 0, getpos _ammobox select 1, 1]
exit
That's for a parachuting ammo crate. Let me work with it really quickly, and I'll make one where it looks like it was kicked out the door.