// particle trail
float trail_time;
+ qboolean trail_allowed; // set to false by teleports, true by update code, prevents bad lerps
// muzzleflash fading
float muzzleflash;
model_t *ownermodel; // model the decal is stuck to (used to make sure the entity is still alive)
vec3_t relativeorigin; // decal at this location in entity's coordinate space
vec3_t relativedirection; // decal oriented this way relative to entity's coordinate space
+ float delayedcollisions; // time that p->bounce becomes active
+ float delayedspawn; // time that particle appears and begins moving
+ float die; // time when this particle should be removed, regardless of alpha
}
particle_t;
// information for local display
// health, etc
int stats[MAX_CL_STATS];
+ float *statsf; // points to stats[] array
// last known inventory bit flags, for blinking
int olditems;
// cl.time of acquiring item, for blinking
//qboolean qw_spectator;
// movement parameters for client prediction
- float qw_movevars_gravity;
- float qw_movevars_stopspeed;
- float qw_movevars_maxspeed; // can change during play
- float qw_movevars_spectatormaxspeed;
- float qw_movevars_accelerate;
- float qw_movevars_airaccelerate;
- float qw_movevars_wateraccelerate;
- float qw_movevars_friction;
- float qw_movevars_waterfriction;
- float qw_movevars_entgravity; // can change during play
+ float movevars_wallfriction;
+ float movevars_waterfriction;
+ float movevars_friction;
+ float movevars_ticrate;
+ float movevars_timescale;
+ float movevars_gravity;
+ float movevars_stopspeed;
+ float movevars_maxspeed;
+ float movevars_spectatormaxspeed;
+ float movevars_accelerate;
+ float movevars_airaccelerate;
+ float movevars_wateraccelerate;
+ float movevars_entgravity;
+ float movevars_jumpvelocity;
+ float movevars_edgefriction;
+ float movevars_maxairspeed;
+ float movevars_stepheight;
+ float movevars_airaccel_qw;
+ float movevars_airaccel_sideways_friction;
// models used by qw protocol
int qw_modelindex_spike;
int qw_deltasequence[QW_UPDATE_BACKUP];
// csqc stuff:
+ // server entity number corresponding to a clientside entity
+ unsigned short csqc_server2csqcentitynumber[MAX_EDICTS];
+ qboolean csqc_loaded;
+ vec3_t csqc_origin;
+ vec3_t csqc_angles;
+ qboolean csqc_usecsqclistener;
+ matrix4x4_t csqc_listenermatrix;
+ char csqc_printtextbuf[MAX_INPUTLINE];
// collision culling data
world_t world;
// this is updated to cl.movement_origin whenever health is < 1
// used by %d print in say/say_team messages if cl_locs_enable is on
vec3_t lastdeathorigin;
+
+ // processing buffer used by R_BuildLightMap, reallocated as needed,
+ // freed on each level change
+ size_t buildlightmapmemorysize;
+ unsigned char *buildlightmapmemory;
}
client_state_t;