That's actually what multidimensional arrays are for. Set array Height=3 and you will be able to store three values per each X element. (on Y axis)
WeaponsArray set value at (X=0, Y=0) to damage
WeaponsArray set value at (X=0, Y=1) to ammo
WeaponsArray set value at (X=0, Y=2) to maximum_ammo
To get ammo of weapon 0: WeaponsArray.At(0,1)
If you have 2D array, use Depth=3 and store values at axis Z.
If you are already using 3D array, then you can store multiple values in comma-separated strings, as mOOnpunk recommended.