From: hgn Date: Sat, 3 Dec 2022 17:21:50 +0000 (+0000) Subject: volume slider X-Git-Url: https://harrygodden.com/git/?a=commitdiff_plain;h=c79a86478448068c0c479d61d14fb8e5a01a6259;p=carveJwlIkooP6JGAAIwe30JlM.git volume slider --- diff --git a/conf.h b/conf.h index 99d0e9f..b07be66 100644 --- a/conf.h +++ b/conf.h @@ -5,7 +5,6 @@ #include "vg/vg.h" VG_STATIC float cl_fov = 0.86f, - cl_volume = 1.0f, cl_blur_strength = 2.0f; VG_STATIC int cl_blur = 1, cl_playermdl_id = 0; diff --git a/menu.h b/menu.h index d8dbd1a..162b76e 100644 --- a/menu.h +++ b/menu.h @@ -582,14 +582,16 @@ VG_STATIC void menu_page_skater(void) } } -VG_STATIC void menu_slider( float *value, float min, float max, +VG_STATIC void menu_slider( float *value, int set_value, mdl_node *slider, mdl_node *pmin, mdl_node *pmax ) { - float h = input_menu_h.axis.value; - - if( fabsf(h) > 0.04f ) - *value += h * vg.frame_delta; - *value = vg_clampf( *value, min, max ); + if( set_value ) + { + float h = input_menu_h.axis.value; + if( fabsf(h) > 0.04f ) + *value += h * vg.frame_delta; + *value = vg_clampf( *value, 0.0f, 1.0f ); + } v3_lerp( pmin->co, pmax->co, *value, slider->co ); } @@ -598,20 +600,18 @@ VG_STATIC void menu_page_settings(void) { menu_run_directional(); - if( game_menu.loc == menu_get_loc( "fov_slider" ) ) - { - menu_slider( &cl_fov, 0.0f, 1.0f, - menu_pnode_fov_slider, menu_pnode_fov_min, - menu_pnode_fov_max ); + int fov_select = game_menu.loc == menu_get_loc( "fov_slider" ); + menu_slider( &cl_fov, fov_select, + menu_pnode_fov_slider, menu_pnode_fov_min, + menu_pnode_fov_max ); + if( fov_select ) menu_fov_target = vg_lerpf( 97.0f, 135.0f, cl_fov ) * 0.8f; - } - else if( game_menu.loc == menu_get_loc( "vol_slider" ) ) - { - menu_slider( &cl_volume, 0.0f, 1.0f, - menu_pnode_vol_slider, menu_pnode_vol_min, - menu_pnode_vol_max ); - } + + menu_slider( &vg_audio.volume_console, + (game_menu.loc == menu_get_loc( "vol_slider" )), + menu_pnode_vol_slider, menu_pnode_vol_min, + menu_pnode_vol_max ); if( menu_page_should_backout() ) {