here you go/////////////////////////


BMAP* smoke_tga = "smoke.tga";

function fire_effect_fun(PARTICLE *p)
{
p.size -= 1 *time_step;
p.alpha -= 5 *time_step;
if(p.alpha <= 0)
p.lifespan = 0;
}

function fire_effect(PARTICLE *p)
{

p.blue = 50 ;
p.green = 100 ;
p.red = 255 ;
p.bmap = smoke_tga;
p.vel_x = random( 1 ) - .500 ;
p.vel_y = random( 1 ) - .500 ;
p.vel_z = random( 5 );
p.size = 12 ;
p.alpha = 70 ;
p.gravity = 0 ;
set(p, TRANSLUCENT|BRIGHT|MOVE);
p.event = fire_effect_fun;
}


action particle_generator()
{
VECTOR temp[3];
while(1)
{

vec_for_vertex(temp,my,1);
effect(fire_effect,10,temp,nullvector);



wait(1);
}


}