Das einzige was passiert ist dass die partikel mal normal nach unten fallen und dann wieder gar nicht. ich hab kein plan wieso!

Code:
 function blut_spec_fun(PARTICLE* dp)//löschen und bei levelblöcken anhalten
{
if(dp.flags & FLAG2) //wenn flag2 on
{
dp.vel_x = 0;//stoppen
dp.vel_y = 0;
dp.vel_z = 0;
dp.gravity = 0;
dp.alpha -= 1*time_factor; //langsam verschwinden lassen...
if(dp.alpha < 0)
{dp.lifespan = 0;}//...und löschen
}

else //wenn flag2 off!
{
c_trace(vector(dp.skill_d,dp.skill_y,dp.skill_z),dp.x,IGNORE_PASSABLE | IGNORE_ME | IGNORE_MODELS | IGNORE_SPRITES);
if(trace_hit == 1)
{dp.flags |= FLAG2;} //setze flag2 on
dp.skill_d = dp.x; dp.skill_y = dp.y; dp.skill_z = dp.z;
}

}