X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=sv_main.c;h=591884d8e00a7531938c3bf0bcf29afd9ed4850a;hb=14cd78c64d15dc040d555f5f92fd273f37f190bc;hp=b8c14c726c37f413423725405a717662a1cbc6ec;hpb=435b52972823fa8e8ceb9b67797ca3f886f6208a;p=xonotic%2Fdarkplaces.git diff --git a/sv_main.c b/sv_main.c index b8c14c72..591884d8 100644 --- a/sv_main.c +++ b/sv_main.c @@ -730,12 +730,12 @@ void SV_WriteEntitiesToClient_QUAKE (client_t *client, edict_t *clent, sizebuf_t 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); @@ -947,7 +947,6 @@ void SV_MarkWriteEntityStateToClient(entity_state_t *s) // 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 @@ -958,7 +957,8 @@ void SV_MarkWriteEntityStateToClient(entity_state_t *s) 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 @@ -1320,12 +1320,7 @@ void SV_WriteClientdataToMessage (edict_t *ent, sizebuf_t *msg) { 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; } @@ -1880,7 +1875,7 @@ void SV_CreateBaseline (void) 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); } } }