#include "libcurl.h"
#include "utf8lib.h"
#include "menu.h"
+#include "cl_video.h"
const char *svc_strings[128] =
{
if (field_mask & SND_LARGEENTITY)
{
ent = (unsigned short) MSG_ReadShort ();
- channel = MSG_ReadByte ();
+ channel = MSG_ReadChar ();
}
else
{
sound_num = MSG_ReadByte ();
}
+ channel = CHAN_NET2ENGINE(channel);
+
MSG_ReadVector(pos, cls.protocol);
if (sound_num >= MAX_SOUNDS)
protocolversion_t protocol;
int nummodels, numsounds;
+ // if we start loading a level and a video is still playing, stop it
+ CL_VideoStop();
+
Con_DPrint("Serverinfo packet received.\n");
+ Collision_Cache_Reset(true);
// if server is active, we already began a loading plaque
if (!sv.active)
}
extern cvar_t slowmo;
+extern cvar_t cl_lerpexcess;
extern void CSQC_UpdateNetworkTimes(double newtime, double oldtime);
static void CL_NetworkTimeReceived(double newtime)
{
if (cl.mtime[0] > cl.mtime[1])
World_Physics_Frame(&cl.world, cl.mtime[0] - cl.mtime[1], cl.movevars_gravity);
+
+ // only lerp entities that also get an update in this frame, when lerp excess is used
+ if(cl_lerpexcess.value > 0)
+ {
+ int i;
+ for (i = 1;i < cl.num_entities;i++)
+ {
+ if (cl.entities_active[i])
+ {
+ entity_t *ent = cl.entities + i;
+ ent->persistent.lerpdeltatime = 0;
+ }
+ }
+ }
}
#define SHOWNET(x) if(cl_shownet.integer==2)Con_Printf("%3i:%s(%i)\n", msg_readcount-1, x, cmd);