target: | Position that defines the center of the artillery launch (position). |
ray: | Ray of the bombed zone (meters). |
min_com_delay: | Minimum communication delay between the call and the first burst (seconds). |
max_com_delay: | Maximum communication delay between the call and the first burst (seconds). |
min_cadence: | Minimum interval between a burst and the next one (seconds). |
max_cadence: | Maximum interval between a burst and the next one (seconds). |
blow_delay: | Maximum delay of a blow by the moment of its burst (seconds). |
ammo: | Type of ammunitions (string). |
blows(REMOVED): | Number of blows for each burst (at least 1). |
bursts: | Number of bursts to launch (use 0 for an artillery launch with unlimited bursts). |
altitude (ADDED): | Altitude at which the shots will be created (meters). |
artillery (ADDED): | Array of objects that have the role of artillery (object). |
art_weapon_cn (ADDED): | Classname of artillery's weapon (string). |
art_ammo_cn (ADDED): | Classname of artillery's ammo (string). |
min_com_delay: | Minimum communication dalay between the call and the stop of the artillery launch. |
max_com_delay: | Maximum communication dalay between the call and the stop of the artillery launch. |
FOSCO_circular_artillery_stop: | When the boolean variable "FOSCO_circular_artillery_stop" becomes true, the artillery is stopped. It's resetted to false at the beginning of the "FOSCO_circular_artillery.sqs" script. It's setted to true by the "FOSCO_circular_artillery_stop.sqs" script. |
FOSCO_circular_artillery_busy: (ADDED) | When the boolean variable "FOSCO_circular_artillery_busy" is true, the artillery is busy and it can't perform another launch. It's setted to true at the beginning of the "FOSCO_circular_artillery.sqs", only if it was false (the artillery was free). It's resetted to false at the end of the "FOSCO_circular_artillery.sqs" script, only if it found the variable false at its beginning (the script performed the launch). |
Some basic suggestions:
1 - _target=_this select 0, make first parameter a position instead of an object, this way markers might be used too.
2 - You might pass as argument an array of vehicles or a single one that would "act" as artillery. So if the vehicle or vehicles passed are destroyed, there will be no artillery support.
3 - _explosion= _ammo createvehicle [(_x_target+_x_gap), (_y_target+_y_gap), -0.1]. Create the ammo higher, for example at 100m, so the observers might see the projectiles falling down.
4 - _explosion setdammage 1. ArmA ammunitions cannot be damaged, they explode upon contact with terrain or another object. There is an static object named "Bomb" that will detonate when damaged, but this is the only exception and it is not an ammo, but a special static object.
Just tried out the demo, looks good, now maybe smoke? This could be a good way to create a smokescreen, what do you think?