if (bits & U_COLORMAP) MSG_WriteByte(msg, ent->v->colormap);
if (bits & U_SKIN) MSG_WriteByte(msg, ent->v->skin);
if (bits & U_EFFECTS) MSG_WriteByte(msg, ent->v->effects);
- if (bits & U_ORIGIN1) MSG_WriteCoord13i(msg, origin[0]);
- if (bits & U_ANGLE1) MSG_WriteAngle8i(msg, angles[0]);
- if (bits & U_ORIGIN2) MSG_WriteCoord13i(msg, origin[1]);
- if (bits & U_ANGLE2) MSG_WriteAngle8i(msg, angles[1]);
- if (bits & U_ORIGIN3) MSG_WriteCoord13i(msg, origin[2]);
- if (bits & U_ANGLE3) MSG_WriteAngle8i(msg, angles[2]);
+ if (bits & U_ORIGIN1) MSG_WriteCoord(msg, origin[0], sv.protocol);
+ if (bits & U_ANGLE1) MSG_WriteAngle(msg, angles[0], sv.protocol);
+ if (bits & U_ORIGIN2) MSG_WriteCoord(msg, origin[1], sv.protocol);
+ if (bits & U_ANGLE2) MSG_WriteAngle(msg, angles[1], sv.protocol);
+ if (bits & U_ORIGIN3) MSG_WriteCoord(msg, origin[2], sv.protocol);
+ if (bits & U_ANGLE3) MSG_WriteAngle(msg, angles[2], sv.protocol);
// LordHavoc: new stuff
if (bits & U_ALPHA) MSG_WriteByte(msg, alpha);
// LordHavoc: only send entities with a model or important effects
if (!s->modelindex && s->specialvisibilityradius == 0)
return;
- isbmodel = (model = sv.models[s->modelindex]) == NULL || model->name[0] != '*';
if (s->tagentity)
{
// tag attached entities simply check their parent
return;
}
// always send world submodels, they don't generate much traffic
- else if (!isbmodel || sv.protocol == PROTOCOL_QUAKE)
+ // except in PROTOCOL_QUAKE where they hog bandwidth like crazy
+ else if (!(isbmodel = (model = sv.models[s->modelindex]) != NULL && model->name[0] == '*') || sv.protocol == PROTOCOL_QUAKE)
{
Mod_CheckLoaded(model);
// entity has survived every check so far, check if visible
{
MSG_WriteByte (msg, svc_setangle);
for (i=0 ; i < 3 ; i++)
- {
- if (sv.protocol == PROTOCOL_DARKPLACES5)
- MSG_WriteAngle16i (msg, ent->v->angles[i] );
- else
- MSG_WriteAngle8i (msg, ent->v->angles[i] );
- }
+ MSG_WriteAngle (msg, ent->v->angles[i], sv.protocol);
ent->v->fixangle = 0;
}
for (i=0 ; i<3 ; i++)
{
MSG_WriteCoord(&sv.signon, svent->e->baseline.origin[i], sv.protocol);
- MSG_WriteAngle8i(&sv.signon, svent->e->baseline.angles[i]);
+ MSG_WriteAngle(&sv.signon, svent->e->baseline.angles[i], sv.protocol);
}
}
}