49 int enumber = slot + 1;
126 if (enumber ==
cl.playerentity)
133 s->
angles[0] = viewangles[0] * -0.0333;
134 s->
angles[1] = viewangles[1];
139 if (enumber ==
cl.playerentity)
144 cl.mviewzoom[1] =
cl.mviewzoom[0];
147 cl.mpunchangle[0][0] = 0;
148 cl.mpunchangle[0][1] = 0;
149 cl.mpunchangle[0][2] = 0;
150 cl.mpunchvector[0][0] = 0;
151 cl.mpunchvector[0][1] = 0;
152 cl.mpunchvector[0][2] = 0;
153 cl.mvelocity[0][0] = 0;
154 cl.mvelocity[0][1] = 0;
155 cl.mvelocity[0][2] = 0;
171 s->
time =
cl.mtime[0] - msec * 0.001;
256 qbool invalid =
false;
257 int number, oldsnapindex, newsnapindex, oldindex, newindex, oldnum, newnum;
262 if (!
cl.entitydatabaseqw)
264 d =
cl.entitydatabaseqw;
271 cl.qw_validsequence =
cls.qw_incoming_sequence;
273 newsnap = d->
snapshot + newsnapindex;
274 memset(newsnap, 0,
sizeof(*newsnap));
279 oldsnapindex =
cl.qw_deltasequence[newsnapindex];
282 if (oldsnapindex != -1)
287 newsnap->
invalid = invalid =
true;
298 cl.qw_validsequence = 0;
309 newnum = word == 0 ? 512 : (word & 511);
313 while (newnum > oldnum)
319 Host_Error(
"EntityFrameQW_CL_ReadFrame: newsnap->num_entities == MAX_PACKETENTITIES");
332 else if (newnum == oldnum)
340 if (newnum != oldnum && !delta && !invalid)
342 cl.qw_validsequence = 0;
349 Host_Error(
"EntityFrameQW_CL_ReadFrame: newsnap->num_entities == MAX_PACKETENTITIES");
355 if (newnum == oldnum)
361 if (
cl.num_entities <= newnum)
363 cl.num_entities = newnum + 1;
364 if (
cl.max_entities < newnum + 1)
369 number =
cl.maxclients + 1;
370 for (newindex = 0;;newindex++)
374 for (;number < newnum;number++)
376 if (
cl.entities_active[number])
378 cl.entities_active[number] =
false;
382 if (number >=
cl.num_entities)
385 ent = &
cl.entities[number];
391 cl.entities_active[number] =
true;
void EntityStateQW_ReadPlayerUpdate(void)
entityframeqw_database_t * EntityFrameQW_AllocDatabase(mempool_t *pool)
void EntityFrameQW_FreeDatabase(entityframeqw_database_t *d)
static void QW_TranslateEffects(entity_state_t *s, int qweffects)
static void EntityStateQW_ReadEntityUpdate(entity_state_t *s, int bits)
void EntityFrameQW_CL_ReadFrame(qbool delta)
void CL_ExpandEntities(int num)
void CL_MoveLerpEntityStates(entity_t *ent)
cvar_t developer_networkentities
void MSG_ReadVector(sizebuf_t *sb, vec3_t v, protocolversion_t protocol)
float MSG_ReadCoord13i(sizebuf_t *sb)
float MSG_ReadAngle8i(sizebuf_t *sb)
float MSG_ReadAngle16i(sizebuf_t *sb)
float Com_CalcRoll(const vec3_t angles, const vec3_t velocity, const vec_t angleval, const vec_t velocityval)
void Con_Print(const char *msg)
Prints to all appropriate console targets, and adds timestamps.
void Con_DPrintf(const char *fmt,...)
A Con_Printf that only shows up if the "developer" cvar is set.
void Con_Printf(const char *fmt,...)
Prints to all appropriate console targets.
void Host_Error(const char *error,...)
#define VectorCopy(in, out)
entity_state_t defaultstate
#define QW_PF_WEAPONFRAME
#define QW_EF_MUZZLEFLASH
#define QW_EF_BRIGHTLIGHT
#define QW_EF_BRIGHTFIELD
#define QW_MAX_PACKET_ENTITIES
#define STAT_VIEWHEIGHT
FTE, DP.
unsigned short modelindex
unsigned char internaleffects
entity_state_t state_current
entity_state_t state_previous
entityframeqw_snapshot_t snapshot[QW_UPDATE_BACKUP]
entity_state_t entities[QW_MAX_PACKET_ENTITIES]
#define Mem_Alloc(pool, size)