Browse Source

engine: server: don't show GAMESAVED message in autosaves, small refactoring

pull/2/head
Alibek Omarov 1 year ago
parent
commit
f7d4e5a2ea
  1. 2
      engine/server/server.h
  2. 9
      engine/server/sv_cmds.c
  3. 25
      engine/server/sv_save.c

2
engine/server/server.h

@ -660,7 +660,7 @@ void SV_SetLogAddress_f( void ); @@ -660,7 +660,7 @@ void SV_SetLogAddress_f( void );
//
// sv_save.c
//
void SV_SaveGame( const char *pName );
qboolean SV_SaveGame( const char *pName );
qboolean SV_LoadGame( const char *pName );
int SV_LoadGameState( char const *level );
void SV_ChangeLevel( qboolean loadfromsavedgame, const char *mapname, const char *start, qboolean background );

9
engine/server/sv_cmds.c

@ -439,18 +439,23 @@ SV_Save_f @@ -439,18 +439,23 @@ SV_Save_f
*/
void SV_Save_f( void )
{
qboolean ret = false;
switch( Cmd_Argc( ))
{
case 1:
SV_SaveGame( "new" );
ret = SV_SaveGame( "new" );
break;
case 2:
SV_SaveGame( Cmd_Argv( 1 ));
ret = SV_SaveGame( Cmd_Argv( 1 ));
break;
default:
Con_Printf( S_USAGE "save <savename>\n" );
break;
}
if( ret && CL_Active() && !FBitSet( host.features, ENGINE_QUAKE_COMPATIBLE ))
CL_HudMessage( "GAMESAVED" ); // defined in titles.txt
}
/*

25
engine/server/sv_save.c

@ -1693,7 +1693,7 @@ SaveGameSlot @@ -1693,7 +1693,7 @@ SaveGameSlot
do a save game
=============
*/
static int SaveGameSlot( const char *pSaveName, const char *pSaveComment )
static qboolean SaveGameSlot( const char *pSaveName, const char *pSaveComment )
{
char hlPath[MAX_QPATH];
char name[MAX_QPATH];
@ -1704,7 +1704,7 @@ static int SaveGameSlot( const char *pSaveName, const char *pSaveComment ) @@ -1704,7 +1704,7 @@ static int SaveGameSlot( const char *pSaveName, const char *pSaveComment )
file_t *pFile;
pSaveData = SaveGameState( false );
if( !pSaveData ) return 0;
if( !pSaveData ) return false;
SaveFinish( pSaveData );
pSaveData = SaveInit( SAVE_HEAPSIZE, SAVE_HASHSTRINGS ); // re-init the buffer
@ -1735,7 +1735,7 @@ static int SaveGameSlot( const char *pSaveName, const char *pSaveComment ) @@ -1735,7 +1735,7 @@ static int SaveGameSlot( const char *pSaveName, const char *pSaveComment )
{
// something bad is happens
SaveFinish( pSaveData );
return 0;
return false;
}
// pending the preview image for savegame
@ -1759,7 +1759,7 @@ static int SaveGameSlot( const char *pSaveName, const char *pSaveComment ) @@ -1759,7 +1759,7 @@ static int SaveGameSlot( const char *pSaveName, const char *pSaveComment )
SaveFinish( pSaveData );
FS_Close( pFile );
return 1;
return true;
}
/*
@ -2169,17 +2169,17 @@ qboolean SV_LoadGame( const char *pPath ) @@ -2169,17 +2169,17 @@ qboolean SV_LoadGame( const char *pPath )
SV_SaveGame
==================
*/
void SV_SaveGame( const char *pName )
qboolean SV_SaveGame( const char *pName )
{
char comment[80];
int result;
string savename;
if( !COM_CheckString( pName ))
return;
return false;
// can we save at this point?
if( !IsValidSave( )) return;
if( !IsValidSave( ))
return false;
if( !Q_stricmp( pName, "new" ))
{
@ -2197,7 +2197,7 @@ void SV_SaveGame( const char *pName ) @@ -2197,7 +2197,7 @@ void SV_SaveGame( const char *pName )
if( n == 1000 )
{
Con_Printf( S_ERROR "no free slots for savegame\n" );
return;
return false;
}
}
else Q_strncpy( savename, pName, sizeof( savename ));
@ -2208,12 +2208,7 @@ void SV_SaveGame( const char *pName ) @@ -2208,12 +2208,7 @@ void SV_SaveGame( const char *pName )
#endif // XASH_DEDICATED
SaveBuildComment( comment, sizeof( comment ));
result = SaveGameSlot( savename, comment );
#if !XASH_DEDICATED
if( result && !FBitSet( host.features, ENGINE_QUAKE_COMPATIBLE ))
CL_HudMessage( "GAMESAVED" ); // defined in titles.txt
#endif // XASH_DEDICATED
return SaveGameSlot( savename, comment );
}
/*

Loading…
Cancel
Save