#ifndef _PARTICLES_H_ #define _PARTICLES_H_ extern int pt_explosion, pt_emp, pt_pointfile, pt_entityparticles, pt_darkfield, pt_blob, pt_blood, pt_lightningblood, pt_gunshot, pt_wizspike, pt_knightspike, pt_spike, pt_superspike, pt_lavasplash, pt_teleportsplash, pt_blasterparticles, pt_torch, pt_flame, pt_bullet, pt_superbullet, pe_default; extern int rt_rocket_trail, rt_smoke, rt_blood, rt_tracer, rt_slight_blood, rt_tracer2, rt_voor_trail, rt_fireball, rt_ice, rt_spit, rt_spell, rt_vorpal, rt_setstaff, rt_magicmissile, rt_boneshard, rt_scarab, rt_acidball, rt_bloodshot, rt_blastertrail, rt_railtrail, rt_bubbletrail; // !!! if this is changed, it must be changed in d_ifacea.h too !!! typedef struct particle_s { // driver-usable fields vec3_t org; float color; vec3_t rgb; float alpha; // drivers never touch the following fields vec3_t vel; struct particle_s *next; float nextemit; float die; float scale; } particle_t; #define PARTICLE_Z_CLIP 8.0 #define frandom() (rand()*(1.0f/RAND_MAX)) #define crandom() (rand()*(2.0f/RAND_MAX)-1.0f) #define hrandom() (rand()*(1.0f/RAND_MAX)-0.5f) #endif