proc/smoke(what,range,amount,length)
spawn(8)
while(what)
walk_rand(what,20)
sleep(length)
del(what)
Now, the what is what is being created. Smoke, Gas, Poison.
The range is how far the smoke goes from the place where it was created.
Amount is the amount of "clouds" is made. This is where I'm having trouble figuring out how I would do this.
And length is how long the clouds last.
Well, it looks to me like the problem is that you're initializing the object in the wrong place. The "what" should be a type path, and the obj should really handle the movement and deleting itself. To handle this I've added an extra argument, to say where the stuff is spawned, and rearranged a bit for a more logical order.
I haven't seen MLAAS, so I'm not sure if you want the clouds moving continuously or just moving into position. It looks like you just want them to move into place and stop, which is easier to handle. If you want them to move around, you need another argument for their speed (unless each material knows its own speed) and then you need to start up a loop in which they move around--but spawn() it out.
Lummox JR