Right, now my init.sqs looks like this:
; Initialise Support Pack
[] exec "\SnySptPack\init.sqs"
;hide markers
"markbasepos1" setmarkerpos [-100,-100]
"markbasepos2" setmarkerpos [-100,-100]
"markbasepos3" setmarkerpos [-100,-100]
;Establish arrays.
;Array POS1
pos1bunkerarray = [pos1bunker1, pos1bunker2, pos1bunker3, pos1bunker4, pos1bunker5, pos1bunker6, pos1bunker7, pos1bunker8, pos1bunker9, pos1bunker10, pos1bunker11, pos1bunker12]
pos1truckarray = [pos1truck]
pos1barrelarray = [pos1barrel1, pos1barrel2, pos1barrel3]
pos1ammoarray = [pos1ammo1, pos1ammo2, pos1ammo3, pos1ammo4, pos1ammo5, pos1ammo6, pos1ammo7, pos1ammo8, pos1ammo9]
pos1mgarray = [pos1mg1,pos1mg2]
pos1bunkerguys = [pos1bunkerguy1, pos1bunkerguy1_1, pos1bunkerguy1_2, pos1bunkerguy1_3, pos1bunkerguy1_4, pos1bunkerguy1_5, pos1bunkerguy1_6, pos1bunkerguy1_7, pos1bunkerguy1_8, pos1bunkerguy1_9, pos1bunkerguy1_10, pos1bunkerguy1_11]
pos1array = pos1bunkerarray + pos1truckarray + pos1barrelarray + pos1ammoarray + pos1mgarray + pos1menarray + pos1bunkerguys
;Set position of NVA base and delete as appropriate.
basecheck = random 100
?basecheck <33: goto "basepos1"
?basecheck >=33 and basecheck <66: goto "basepos2"
?basecheck >=66 and basecheck <100: goto "basepos3"
#basepos1
basepos1 = true
goto "next"
#basepos2
basepos2 = true
"deletevehicle _x" foreach pos1array
goto "next"
#basepos3
basepos3 = true
"deletevehicle _x" foreach pos1array
goto "next"
#next
exit
Now, this ought to delete all the objects in pos1array, but for some reason it's stopped doing that. Any ideas why?