Well I forced myself to read it.
I think I'll give it a go...
Nice job Vex.
It kinda sorta made sense to me.
I had an issue following at one point --
set OpticalFlare_Ar[i]= OpticalFlare_Ar[ OpticalFlare_total - 1]
This part lost me.
What are you doing at this point?
The comments don't really register with my mind.