From 05560c760745af34719302d7d31ded4626811748 Mon Sep 17 00:00:00 2001 From: Alibek Omarov Date: Fri, 19 May 2023 05:14:24 +0300 Subject: [PATCH] engine: always read and set vid_fullscreen value directly with it's object --- common/defaults.h | 2 +- engine/client/input.c | 1 - engine/client/ref_common.c | 4 ++-- engine/platform/sdl/vid_sdl.c | 10 ++++------ 4 files changed, 7 insertions(+), 10 deletions(-) diff --git a/common/defaults.h b/common/defaults.h index e8fbaec6..c99edcaa 100644 --- a/common/defaults.h +++ b/common/defaults.h @@ -204,7 +204,7 @@ Default build-depended cvar and constant values #endif // DEFAULT_ALLOWCONSOLE #ifndef DEFAULT_FULLSCREEN - #define DEFAULT_FULLSCREEN 1 + #define DEFAULT_FULLSCREEN "1" // must be a string #endif // DEFAULT_FULLSCREEN #endif // DEFAULTS_H diff --git a/engine/client/input.c b/engine/client/input.c index 6452dfd2..c59db0b8 100644 --- a/engine/client/input.c +++ b/engine/client/input.c @@ -36,7 +36,6 @@ static struct inputstate_s float lastpitch, lastyaw; } inputstate; -extern convar_t *vid_fullscreen; convar_t *m_pitch; convar_t *m_yaw; diff --git a/engine/client/ref_common.c b/engine/client/ref_common.c index 106688a9..d0ac0654 100644 --- a/engine/client/ref_common.c +++ b/engine/client/ref_common.c @@ -557,11 +557,11 @@ static void SetFullscreenModeFromCommandLine( void ) #if !XASH_MOBILE_PLATFORM if( Sys_CheckParm( "-fullscreen" )) { - Cvar_Set( "fullscreen", "1" ); + Cvar_DirectSet( vid_fullscreen, "1" ); } else if( Sys_CheckParm( "-windowed" )) { - Cvar_Set( "fullscreen", "0" ); + Cvar_DirectSet( vid_fullscreen, "0" ); } #endif } diff --git a/engine/platform/sdl/vid_sdl.c b/engine/platform/sdl/vid_sdl.c index e1f85386..8702f1b8 100644 --- a/engine/platform/sdl/vid_sdl.c +++ b/engine/platform/sdl/vid_sdl.c @@ -596,7 +596,7 @@ static qboolean VID_SetScreenResolution( int width, int height ) void VID_RestoreScreenResolution( void ) { #if SDL_VERSION_ATLEAST( 2, 0, 0 ) - if( !Cvar_VariableInteger("fullscreen") ) + if( !vid_fullscreen->value ) { SDL_SetWindowBordered( host.hWnd, SDL_TRUE ); } @@ -1117,7 +1117,6 @@ Set the described video mode */ qboolean VID_SetMode( void ) { - qboolean fullscreen = false; int iScreenWidth, iScreenHeight; rserr_t err; @@ -1146,14 +1145,13 @@ qboolean VID_SetMode( void ) } if( !FBitSet( vid_fullscreen->flags, FCVAR_CHANGED ) ) - Cvar_SetValue( "fullscreen", DEFAULT_FULLSCREEN ); + Cvar_DirectSet( vid_fullscreen, DEFAULT_FULLSCREEN ); else ClearBits( vid_fullscreen->flags, FCVAR_CHANGED ); SetBits( gl_vsync->flags, FCVAR_CHANGED ); - fullscreen = Cvar_VariableInteger("fullscreen") != 0; - if(( err = R_ChangeDisplaySettings( iScreenWidth, iScreenHeight, fullscreen )) == rserr_ok ) + if(( err = R_ChangeDisplaySettings( iScreenWidth, iScreenHeight, vid_fullscreen->value )) == rserr_ok ) { sdlState.prev_width = iScreenWidth; sdlState.prev_height = iScreenHeight; @@ -1162,7 +1160,7 @@ qboolean VID_SetMode( void ) { if( err == rserr_invalid_fullscreen ) { - Cvar_SetValue( "fullscreen", 0 ); + Cvar_DirectSet( vid_fullscreen, "0" ); Con_Reportf( S_ERROR "VID_SetMode: fullscreen unavailable in this mode\n" ); Sys_Warn("fullscreen unavailable in this mode!"); if(( err = R_ChangeDisplaySettings( iScreenWidth, iScreenHeight, false )) == rserr_ok )