From d96c20b1d768d30f4bd7a5cebe468f9d0e5c5e34 Mon Sep 17 00:00:00 2001 From: havoc Date: Sun, 10 Jun 2007 23:49:43 +0000 Subject: [PATCH] load csprogs.dat after it is downloaded git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@7395 d7cf8633-e32d-0410-b094-e92efae38249 --- cl_parse.c | 16 ++++++++++++++-- client.h | 1 + 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/cl_parse.c b/cl_parse.c index 4a06924c..4a1dca33 100644 --- a/cl_parse.c +++ b/cl_parse.c @@ -534,6 +534,11 @@ static void QW_CL_RequestNextDownload(void) // done loading cl.loadfinished = true; + if (cl.loadcsqc) + { + cl.loadcsqc = false; + CL_VM_Init(); + } break; case dl_sound: if (cls.qw_downloadnumber == 0) @@ -941,7 +946,16 @@ void CL_BeginDownloads(qboolean aborteddownload) && cl_serverextension_download.integer && (FS_CRCFile(csqc_progname.string, &progsize) != csqc_progcrc.integer || ((int)progsize != csqc_progsize.integer && csqc_progsize.integer != -1)) && !FS_FileExists(va("dlcache/%s.%i.%i", csqc_progname.string, csqc_progsize.integer, csqc_progcrc.integer))) + { Cmd_ForwardStringToServer(va("download %s", csqc_progname.string)); + return; + } + } + + if (cl.loadcsqc) + { + cl.loadcsqc = false; + CL_VM_Init(); } if (cl.loadmodel_current < cl.loadmodel_total) @@ -3081,7 +3095,6 @@ void CL_ParseServerMessage(void) case qw_svc_serverdata: //Cbuf_Execute(); // make sure any stuffed commands are done CL_ParseServerInfo(); - CL_VM_Init(); //[515]: init csqc break; case qw_svc_setangle: @@ -3451,7 +3464,6 @@ void CL_ParseServerMessage(void) case svc_serverinfo: CL_ParseServerInfo (); - CL_VM_Init(); //[515]: init csqc break; case svc_setangle: diff --git a/client.h b/client.h index 0b16a62d..d44d2d03 100644 --- a/client.h +++ b/client.h @@ -924,6 +924,7 @@ typedef struct client_state_s int downloadsound_current; int loadsound_total; qboolean downloadcsqc; + qboolean loadcsqc; qboolean loadbegun; qboolean loadfinished; -- 2.39.2