]> de.git.xonotic.org Git - voretournament/voretournament.git/blobdiff - data/qcsrc/client/View.qc
First step toward repairing the volume adjusters with the cutsound feature. It was...
[voretournament/voretournament.git] / data / qcsrc / client / View.qc
index 98c97ab7c9e636b4376d0f1dee74a73f8c2bedd7..0e4167c83fff54e70f9dbb7bff3e2c9aa5b1a41b 100644 (file)
@@ -256,7 +256,7 @@ float pickup_crosshair_time, pickup_crosshair_size;
 float myhealth, myhealth_prev, myhealth_flash;\r
 float contentavgalpha, liquidalpha_prev;\r
 float stomachsplash_alpha, stomachsplash_remove_at_respawn;\r
-float volume_modify_1, volume_modify_2, volume_modify_default_1, volume_modify_default_2, volume_modify_default_set;\r
+float volume_modify_1, volume_modify_2, volume_modify_default_1, volume_modify_default_2;\r
 vector myhealth_gentlergb;\r
 vector liquidcolor_prev;\r
 vector damage_blurpostprocess, content_blurpostprocess;\r
@@ -516,11 +516,20 @@ void CSQC_UpdateView(float w, float h)
 \r
                if(cvar("hud_postprocessing"))\r
                {\r
-                       if(cvar("hud_contents_blur"))\r
+                       if(cvar("hud_contents_liquid_blur"))\r
                        {\r
+                               // when inside the stomach, we use different blur settings than when we're inside other fluids\r
                                content_blurpostprocess_x = 1;\r
-                               content_blurpostprocess_y = contentavgalpha * cvar("hud_contents_blur");\r
-                               content_blurpostprocess_z = contentavgalpha * cvar("hud_contents_blur_alpha");\r
+                               if(getstati(STAT_VORE_EATEN))\r
+                               {\r
+                                       content_blurpostprocess_y = contentavgalpha * cvar("hud_contents_stomach_blur");\r
+                                       content_blurpostprocess_z = contentavgalpha * cvar("hud_contents_stomach_blur_alpha");\r
+                               }\r
+                               else\r
+                               {\r
+                                       content_blurpostprocess_y = contentavgalpha * cvar("hud_contents_liquid_blur");\r
+                                       content_blurpostprocess_z = contentavgalpha * cvar("hud_contents_liquid_blur_alpha");\r
+                               }\r
                        }\r
                        else\r
                        {\r
@@ -687,50 +696,53 @@ void CSQC_UpdateView(float w, float h)
                cvar_set("r_glsl_postprocess_uservec2_enable", "0");\r
        }\r
 \r
-       if(cvar("cl_vore_cutvolume_sound") || cvar("cl_vore_cutvolume_music"))\r
+       if(cvar("cl_vore_cutvolume_sound") < 1 || cvar("cl_vore_cutvolume_music") < 1)\r
        {\r
-               if(!volume_modify_default_set)\r
+               float volume_modify_1_target, volume_modify_2_target, volume_modify_fade;\r
+               if(getstati(STAT_VORE_EATEN))\r
                {\r
-                       // set the initial volume\r
+                       volume_modify_1_target = volume_modify_default_1 * cvar("cl_vore_cutvolume_sound");\r
+                       volume_modify_2_target = volume_modify_default_2 * cvar("cl_vore_cutvolume_music");\r
+               }\r
+               else\r
+               {\r
+                       volume_modify_1_target = 1;\r
+                       volume_modify_2_target = 1;\r
+               }\r
+               volume_modify_fade = cvar("cl_vore_cutvolume_fade") * frametime;\r
+\r
+               if(spectatee_status == -1 || intermission)\r
+               {\r
+                       // no volume fading is currently taking place, so if we change the volume settings, update the initial volume\r
                        volume_modify_default_1 = cvar("volume");\r
                        volume_modify_default_2 = cvar("bgmvolume");\r
-                       volume_modify_default_set = TRUE;\r
                }\r
-               if(spectatee_status == -1 || intermission)\r
-                       volume_modify_1 = volume_modify_2 = 1;\r
-               else if (getstati(STAT_VORE_EATEN))\r
+               else if(volume_modify_1 != volume_modify_1_target || volume_modify_2 != volume_modify_2_target)\r
                {\r
-                       if (volume_modify_1 > cvar("cl_vore_cutvolume_sound"))\r
-                       {\r
-                               volume_modify_1 -= cvar("cl_vore_cutvolume_fade") * frametime;\r
-                               if(volume_modify_1 < cvar("cl_vore_cutvolume_sound"))\r
-                                       volume_modify_1 = cvar("cl_vore_cutvolume_sound");\r
-                       }\r
-                       if (volume_modify_2 > cvar("cl_vore_cutvolume_music"))\r
-                       {\r
-                               volume_modify_2 -= cvar("cl_vore_cutvolume_fade") * frametime;\r
-                               if(volume_modify_2 < cvar("cl_vore_cutvolume_music"))\r
-                                       volume_modify_2 = cvar("cl_vore_cutvolume_music");\r
-                       }\r
+                       if (volume_modify_1 > volume_modify_1_target + volume_modify_fade)\r
+                               volume_modify_1 -= volume_modify_fade;\r
+                       else if (volume_modify_1 < volume_modify_1_target - volume_modify_fade)\r
+                               volume_modify_1 += volume_modify_fade;\r
+                       else\r
+                               volume_modify_1 = volume_modify_1_target;\r
+\r
+                       if (volume_modify_2 > volume_modify_2_target + volume_modify_fade)\r
+                               volume_modify_2 -= volume_modify_fade;\r
+                       else if (volume_modify_2 < volume_modify_2_target - volume_modify_fade)\r
+                               volume_modify_2 += volume_modify_fade;\r
+                       else\r
+                               volume_modify_2 = volume_modify_1_target;\r
+\r
+                       cvar_set("volume", ftos(volume_modify_1));\r
+                       cvar_set("bgmvolume", ftos(volume_modify_2));\r
+                       // TODO: Setting the "volume" cvar is a bad way to go, and modifies the menu slider! We need a better way\r
                }\r
-               else\r
+               else if(cvar("volume") != volume_modify_default_1 || cvar("bgmvolume") != volume_modify_default_2)\r
                {\r
-                       if (volume_modify_1 < 1)\r
-                       {\r
-                               volume_modify_1 += cvar("cl_vore_cutvolume_fade") * frametime;\r
-                               if(volume_modify_1 > 1)\r
-                                       volume_modify_1 = 1;\r
-                       }\r
-                       if (volume_modify_2 < 1)\r
-                       {\r
-                               volume_modify_2 += cvar("cl_vore_cutvolume_fade") * frametime;\r
-                               if(volume_modify_2 > 1)\r
-                                       volume_modify_2 = 1;\r
-                       }\r
+                       // no volume fading is currently taking place, so if we change the volume settings, update the initial volume\r
+                       volume_modify_default_1 = cvar("volume");\r
+                       volume_modify_default_2 = cvar("bgmvolume");\r
                }\r
-               cvar_set("volume", ftos(volume_modify_default_1 * volume_modify_1));\r
-               cvar_set("bgmvolume", ftos(volume_modify_default_2 * volume_modify_2));\r
-               // TODO: Setting the "volume" cvar is a bad way to go, and modifies the menu slider! We need a better way to go\r
        }\r
 \r
        // Draw the mouse cursor\r