+ else if (!strcmp("fog_alpha", key))
+ r_refdef.fog_alpha = atof(value);
+ else if (!strcmp("fog_start", key))
+ r_refdef.fog_start = atof(value);
+ else if (!strcmp("fog_end", key))
+ r_refdef.fog_end = atof(value);
+ }
+}
+
+extern void CL_Locs_Reload_f(void);
+extern void CL_VM_Init (void);
+static const vec3_t defaultmins = {-4096, -4096, -4096};
+static const vec3_t defaultmaxs = {4096, 4096, 4096};
+static void CL_SetupWorldModel(void)
+{
+ // update the world model
+ cl.entities[0].render.model = cl.worldmodel = cl.model_precache[1];
+ CL_UpdateRenderEntity(&cl.entities[0].render);
+
+ // set up csqc world for collision culling
+ if (cl.worldmodel)
+ World_SetSize(&cl.world, cl.worldmodel->name, cl.worldmodel->normalmins, cl.worldmodel->normalmaxs);
+ else
+ World_SetSize(&cl.world, "", defaultmins, defaultmaxs);
+
+ // load or reload .loc file for team chat messages
+ CL_Locs_Reload_f();
+
+ // reset particles and other per-level things
+ R_Modules_NewMap();
+
+ // load the team chat beep if possible
+ cl.foundtalk2wav = FS_FileExists("sound/misc/talk2.wav");
+
+ // check memory integrity
+ Mem_CheckSentinelsGlobal();
+
+ // load the csqc now
+ if (cl.loadcsqc)
+ {
+ cl.loadcsqc = false;
+
+ CL_VM_Init();