From 7a9aadec2b077884646fff3a9f59d3ef109d2b17 Mon Sep 17 00:00:00 2001 From: g-cont Date: Sat, 20 Aug 2016 00:00:00 +0300 Subject: [PATCH] 20 Aug 2016 --- engine/client/cl_frame.c | 6 +++--- engine/client/gl_vidnt.c | 7 ++++++- engine/common/soundlib/snd_wav.c | 3 +-- engine/server/sv_client.c | 8 -------- engine/server/sv_main.c | 7 +------ 5 files changed, 11 insertions(+), 20 deletions(-) diff --git a/engine/client/cl_frame.c b/engine/client/cl_frame.c index 7b72854d..233f9395 100644 --- a/engine/client/cl_frame.c +++ b/engine/client/cl_frame.c @@ -249,12 +249,12 @@ void CL_UpdateEntityFields( cl_entity_t *ent ) if( ent->player && RP_LOCALCLIENT( ent )) // stupid Half-Life bug ent->angles[PITCH] = -ent->angles[PITCH] / 3.0f; - // make me lerp - if( ent->index == cl.predicted.onground && cl.predicted.moving ) + // make me lerp (multiplayer only. this code visually breaks XashXT parent system) + if( ent->index == cl.predicted.onground && cl.predicted.moving && ( cl.maxclients > 1 )) { CL_InterpolateMovingEntity( ent ); } - else if( ent->model && ent->model->type == mod_brush && ent->curstate.animtime != 0.0f) + else if( ent->model && ent->model->type == mod_brush && ent->curstate.animtime != 0.0f ) { float d, f = 0.0f; int i; diff --git a/engine/client/gl_vidnt.c b/engine/client/gl_vidnt.c index 9509ee6f..b5cce91f 100644 --- a/engine/client/gl_vidnt.c +++ b/engine/client/gl_vidnt.c @@ -1478,7 +1478,8 @@ qboolean R_Init_OpenGL( void ) if( !opengl_dll.link ) return false; - GL_CheckExtension( "OpenGL Internal ProcAddress", wglproc_funcs, NULL, GL_WGL_PROCADDRESS ); + if( Sys_CheckParm( "-gldebug" ) && host.developer >= 1 ) + GL_CheckExtension( "OpenGL Internal ProcAddress", wglproc_funcs, NULL, GL_WGL_PROCADDRESS ); return VID_SetMode(); } @@ -1717,6 +1718,10 @@ void GL_InitExtensions( void ) glConfig.extensions_string = pglGetString( GL_EXTENSIONS ); MsgDev( D_INFO, "Video: %s\n", glConfig.renderer_string ); + // initalize until base opengl functions loaded (old-context) + if( !Sys_CheckParm( "-gldebug" ) || host.developer < 1 ) + GL_CheckExtension( "OpenGL Internal ProcAddress", wglproc_funcs, NULL, GL_WGL_PROCADDRESS ); + // windows-specific extensions GL_CheckExtension( "WGL Extensions String", wglgetextensionsstring, NULL, GL_WGL_EXTENSIONS ); diff --git a/engine/common/soundlib/snd_wav.c b/engine/common/soundlib/snd_wav.c index 6616f555..a82065ad 100644 --- a/engine/common/soundlib/snd_wav.c +++ b/engine/common/soundlib/snd_wav.c @@ -76,8 +76,7 @@ static void FindNextChunk( const char *name ) iff_dataPtr += 4; iff_chunkLen = GetLittleLong(); - // limit chunk size to 1 mb - if( iff_chunkLen < 0 || iff_chunkLen > ( 1024 * 1024 )) + if( iff_chunkLen < 0 ) { iff_dataPtr = NULL; return; diff --git a/engine/server/sv_client.c b/engine/server/sv_client.c index 2fc915f2..24ffe701 100644 --- a/engine/server/sv_client.c +++ b/engine/server/sv_client.c @@ -1879,14 +1879,6 @@ void SV_UserinfoChanged( sv_client_t *cl, const char *userinfo ) } else cl->modelindex = 0; - // force reset player model to "player" - if( cl->modelindex == 0 ) - { - Info_SetValueForKey( cl->userinfo, "model", "player" ); - Mod_RegisterModel( "models/player.mdl", SV_ModelIndex( "models/player.mdl" )); - SV_SetModel( ent, "models/player.mdl" ); - } - // call prog code to allow overrides svgame.dllFuncs.pfnClientUserInfoChanged( cl->edict, cl->userinfo ); ent->v.netname = MAKE_STRING( cl->name ); diff --git a/engine/server/sv_main.c b/engine/server/sv_main.c index 4dfe5b56..2e989a31 100644 --- a/engine/server/sv_main.c +++ b/engine/server/sv_main.c @@ -549,12 +549,7 @@ Host_ServerFrame void Host_ServerFrame( void ) { // if server is not active, do nothing - if( !svs.initialized ) - { - // but allow rcon - SV_ReadPackets (); - return; - } + if( !svs.initialized ) return; svgame.globals->frametime = host.frametime;