Das kannst Du natürlich tun. Grundsätzlich wäre es aber wohl am einfachsten einen Wert in den Skills der Partikel zu speichern und dann jedes Frame eine Modulo Operation auszuführen. Z.B. so:
Code:
function ParticleDustRun
{
[...]
if (total_frames % 8 == my.skill_a)
{
// perform vec_dist operation here...
}
}
function ParticleDustInit
{
My.Skill_a = int(random(8));
[...]
}
Aber wie schon gesagt. Grundsätzlich ist die meiner Erfahrung nach beste Methode, Partikeln eine kurze Lifespan zu verpassen und die Partikelfunktionen so kurz wie möglich zu halten. Ich selber vermeide sogar Aufrufe von Funktionen wie Pow() in Partikelfunktionen. Für Staub, den ich soweiso nur sehr begrenzt in Spielen einsetzen würde, würde ich zwei oder drei Sprites nehmen, anstelle von hunderten von Partikeln.