From dde2c0c2ce69198b72e03ea14a128d68897160ec Mon Sep 17 00:00:00 2001 From: div0 Date: Wed, 6 Feb 2008 07:38:18 +0000 Subject: [PATCH] DP_QC_CVAR_TYPE, fixes some bugs with menu controls appearing wrong (joystick) git-svn-id: svn://svn.icculus.org/nexuiz/trunk@3336 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/default.cfg | 9 +-------- data/qcsrc/menu/mbuiltin.qh | 8 ++++++++ data/qcsrc/menu/nexuiz/dialog_settings_input.c | 8 ++++---- data/qcsrc/menu/nexuiz/dialog_settings_video.c | 2 +- 4 files changed, 14 insertions(+), 13 deletions(-) diff --git a/data/default.cfg b/data/default.cfg index fd6348368..a3f4fe176 100644 --- a/data/default.cfg +++ b/data/default.cfg @@ -217,6 +217,7 @@ set g_minstagib_speed_jumpheight 1.8 set g_minstagib_speed_moverate 1.25 set g_rocketarena 0 set g_vampire 0 +set g_shocknex 0 set g_laserguided_missile 0 set g_midair 0 set g_midair_shieldtime 0.3 @@ -492,13 +493,6 @@ sv_sound_land "" sv_sound_watersplash "" sv_clmovement_waitforinput 4 -// disable joysticks -// set them to "" first so this won't override the default value to 0 to make sure the menu can detect whether joystick is supported -set joystick "" -set joystick 0 -set joy_enable "" -set joy_enable 0 - // startmap_dm is used when running with the -listen or -dedicated commandline options alias startmap_sp "set _sv_init 1; map aggressor" alias startmap_dm "set _sv_init 1; map aggressor" @@ -914,7 +908,6 @@ set con_completion_exec *.cfg // these non-saved engine cvars shall be savedG seta cl_port $cl_port -seta joy_enable $joy_enable seta r_showsurfaces $r_showsurfaces seta r_ambient $r_ambient seta skill $skill diff --git a/data/qcsrc/menu/mbuiltin.qh b/data/qcsrc/menu/mbuiltin.qh index 7dcb52850..01811a469 100644 --- a/data/qcsrc/menu/mbuiltin.qh +++ b/data/qcsrc/menu/mbuiltin.qh @@ -281,6 +281,14 @@ void(float bufhandle, float string_index) bufstr_free = #449; //When caseinsensitive is set, the CRC is calculated of the lower cased string. float(float caseinsensitive, string s, ...) crc16 = #494; +//DP_QC_CVAR_TYPE +float(string name) cvar_type = #495; +float CVAR_TYPEFLAG_EXISTS = 1; +float CVAR_TYPEFLAG_SAVED = 2; +float CVAR_TYPEFLAG_PRIVATE = 4; +float CVAR_TYPEFLAG_ENGINE = 8; +float CVAR_TYPEFLAG_HASDESCRIPTION = 16; + #ifdef FIXEDFOPEN float fopen( string filename, float mode ) = { diff --git a/data/qcsrc/menu/nexuiz/dialog_settings_input.c b/data/qcsrc/menu/nexuiz/dialog_settings_input.c index 41467a121..f2373d47c 100644 --- a/data/qcsrc/menu/nexuiz/dialog_settings_input.c +++ b/data/qcsrc/menu/nexuiz/dialog_settings_input.c @@ -50,18 +50,18 @@ void fillNexuizInputSettingsTab(entity me) me.TR(me); me.TD(me, 1, 3, e = makeNexuizCheckBox(1.022, "m_pitch", "Invert mouse")); me.TR(me); - if(cvar_defstring("joy_enable") != "") + if(cvar_type("joy_enable") & CVAR_TYPEFLAG_ENGINE) me.TD(me, 1, 3, e = makeNexuizCheckBox(0, "joy_enable", "Use joystick input")); - else if(cvar_defstring("joystick") != "") + else if(cvar_type("joystick") & CVAR_TYPEFLAG_ENGINE) me.TD(me, 1, 3, e = makeNexuizCheckBox(0, "joystick", "Use joystick input")); me.TR(me); me.TD(me, 1, 3, e = makeNexuizCheckBox(0, "cl_movement", "Client-side movement prediction")); me.TR(me); me.TD(me, 1, 3, e = makeNexuizCheckBox(0, "con_closeontoggleconsole", "\"enter console\" also closes")); me.TR(me); - if(cvar_defstring("vid_dgamouse") != "") + if(cvar_type("vid_dgamouse") & CVAR_TYPEFLAG_ENGINE) me.TD(me, 1, 3, e = makeNexuizCheckBox(0, "vid_dgamouse", "Turn off OS mouse acceleration")); - else if(cvar_defstring("apple_mouse_noaccel") != "") + else if(cvar_type("apple_mouse_noaccel") & CVAR_TYPEFLAG_ENGINE) me.TD(me, 1, 3, e = makeNexuizCheckBox(0, "apple_mouse_noaccel", "Turn off OS mouse acceleration")); } #endif diff --git a/data/qcsrc/menu/nexuiz/dialog_settings_video.c b/data/qcsrc/menu/nexuiz/dialog_settings_video.c index c79505ff8..52764964f 100644 --- a/data/qcsrc/menu/nexuiz/dialog_settings_video.c +++ b/data/qcsrc/menu/nexuiz/dialog_settings_video.c @@ -54,7 +54,7 @@ void fillNexuizVideoSettingsTab(entity me) e.configureNexuizTextSliderValues(e); me.TR(me); - if(cvar_defstring("apple_multithreadedgl") != "") // FIXME can this check against string_null too? + if(cvar_type("apple_multithreadedgl") & CVAR_TYPEFLAG_ENGINE) me.TD(me, 1, 3, e = makeNexuizCheckBox(1, "apple_multithreadedgl", "Disable multithreaded OpenGL")); me.TR(me); -- 2.39.2