]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
new funny cvar cl_lockview (best used with chase_active)
authorRudolf Polzer <divverent@alientrap.org>
Tue, 4 May 2010 18:05:42 +0000 (20:05 +0200)
committerRudolf Polzer <divverent@alientrap.org>
Tue, 4 May 2010 18:05:42 +0000 (20:05 +0200)
defaultXonotic.cfg
qcsrc/client/View.qc

index 17503f81af7eaf2607d6f15fe6960160425cf402..d373f9964dbf8488e827e8b5c58668c000ce9c9e 100644 (file)
@@ -1807,3 +1807,6 @@ sv_gameplayfix_nogravityonground 1
 
 // autodemo deleting
 seta cl_autodemo_delete_keeprecords 0 "when 1, records with a newly made race/cts demo are kept even if cl_autodemo_delete is used to delete demos"
+
+// freeze camera
+set cl_lockview 0 "when 1, the camera does not move any more"
index 9bb7661430b215c4de41cfdd67884efd8c493e7e..c5c4c7093f64f3c586043cd77287215e2659ab70 100644 (file)
@@ -343,6 +343,8 @@ string NextFrameCommand;
 void CSQC_SPIDER_HUD();
 void CSQC_RAPTOR_HUD();
 
+vector freeze_pmove_org, freeze_input_angles;
+
 void CSQC_UpdateView(float w, float h)
 {
        entity e;
@@ -366,6 +368,17 @@ void CSQC_UpdateView(float w, float h)
        pmove_org = warpzone_fixview_origin - vo;
        input_angles = warpzone_fixview_angles;
 
+       if(cvar("cl_lockview"))
+       {
+               pmove_org = warpzone_fixview_origin = freeze_pmove_org;
+               input_angles = freeze_input_angles;
+               R_SetView(VF_ORIGIN, pmove_org + vo);
+               R_SetView(VF_ANGLES, input_angles);
+               //R_SetView(VF_CL_VIEWANGLES, input_angles);
+       }
+       freeze_pmove_org = pmove_org;
+       freeze_input_angles = input_angles;
+
        // Render the Scene
        if(!intermission || !view_set)
        {