void EntityState5_WriteUpdate(int number, const entity_state_t *s, int changedbits, sizebuf_t *msg)
{
unsigned int bits = 0;
+ //dp_model_t *model;
ENTITYSIZEPROFILING_START(msg, s->number);
prvm_eval_t *val;
else
{
bits = changedbits;
- if ((bits & E5_ORIGIN) && (s->exteriormodelforclient || s->tagentity || s->viewmodelforclient || s->origin[0] <= -4096.0625 || s->origin[0] >= 4095.9375 || s->origin[1] <= -4096.0625 || s->origin[1] >= 4095.9375 || s->origin[2] <= -4096.0625 || s->origin[2] >= 4095.9375))
+ if ((bits & E5_ORIGIN) && (s->exteriormodelforclient || s->tagentity || s->viewmodelforclient || (s->number >= 1 && s->number <= svs.maxclients) || s->origin[0] <= -4096.0625 || s->origin[0] >= 4095.9375 || s->origin[1] <= -4096.0625 || s->origin[1] >= 4095.9375 || s->origin[2] <= -4096.0625 || s->origin[2] >= 4095.9375))
+ // maybe also add: ((model = sv.models[s->modelindex]) != NULL && model->name[0] == '*')
bits |= E5_ORIGIN32;
// possible values:
// negative origin:
}
}
- // add packetlog entry
- packetlog = d->packetlog + packetlognumber;
- packetlog->packetnumber = framenum;
- packetlog->numstates = 0;
+ packetlog = NULL;
// write stat updates
if (sv.protocol != PROTOCOL_QUAKE && sv.protocol != PROTOCOL_QUAKEDP && sv.protocol != PROTOCOL_NEHAHRAMOVIE && sv.protocol != PROTOCOL_NEHAHRABJP && sv.protocol != PROTOCOL_NEHAHRABJP2 && sv.protocol != PROTOCOL_NEHAHRABJP3 && sv.protocol != PROTOCOL_DARKPLACES1 && sv.protocol != PROTOCOL_DARKPLACES2 && sv.protocol != PROTOCOL_DARKPLACES3 && sv.protocol != PROTOCOL_DARKPLACES4 && sv.protocol != PROTOCOL_DARKPLACES5)
{
if (host_client->statsdeltabits[i>>3] & (1<<(i&7)))
{
host_client->statsdeltabits[i>>3] &= ~(1<<(i&7));
+ // add packetlog entry now that we have something for it
+ if (!packetlog)
+ {
+ packetlog = d->packetlog + packetlognumber;
+ packetlog->packetnumber = framenum;
+ packetlog->numstates = 0;
+ }
packetlog->statsdeltabits[i>>3] |= (1<<(i&7));
if (host_client->stats[i] >= 0 && host_client->stats[i] < 256)
{
if(!l && !need_empty)
return;
+ // add packetlog entry now that we have something for it
+ if (!packetlog)
+ {
+ packetlog = d->packetlog + packetlognumber;
+ packetlog->packetnumber = framenum;
+ packetlog->numstates = 0;
+ }
+
// write state updates
if (developer_networkentities.integer >= 10)
Con_Printf("send: svc_entities %i\n", framenum);