You should use a counter variable to do this ....
This is how I do it anyway.
global PARTICLEcurrent.particle Function PARTICLEcreate( x, y, z, etc... ) p.particle = PARTICLEcurrent p\x = x p\y = y etc.... PARTICLEcurrent = after PARTICLEcurrent if PARTICLEcurrent = null PARTICLEcurrent = first particle end function
This is how I do it anyway.