Browse Source

filesystem: simplify common parsing of type key for liblist.gam and gameinfo.txt

pull/2/head
Alibek Omarov 1 year ago
parent
commit
8e16c0e410
  1. 11
      filesystem/filesystem.c

11
filesystem/filesystem.c

@ -714,7 +714,13 @@ void FS_ParseGenericGameInfo( gameinfo_t *GameInfo, const char *buf, const qbool
{ {
pfile = COM_ParseFile( pfile, token, sizeof( token )); pfile = COM_ParseFile( pfile, token, sizeof( token ));
if( !isGameInfo && !Q_stricmp( token, "singleplayer_only" )) if( isGameInfo )
{
Q_strncpy( GameInfo->type, token, sizeof( GameInfo->type ));
}
else
{
if( !Q_stricmp( token, "singleplayer_only" ))
{ {
// TODO: Remove this ugly hack too. // TODO: Remove this ugly hack too.
// This was made because Half-Life has multiplayer, // This was made because Half-Life has multiplayer,
@ -726,7 +732,7 @@ void FS_ParseGenericGameInfo( gameinfo_t *GameInfo, const char *buf, const qbool
GameInfo->gamemode = GAME_SINGLEPLAYER_ONLY; GameInfo->gamemode = GAME_SINGLEPLAYER_ONLY;
Q_strncpy( GameInfo->type, "Single", sizeof( GameInfo->type )); Q_strncpy( GameInfo->type, "Single", sizeof( GameInfo->type ));
} }
else if( !isGameInfo && !Q_stricmp( token, "multiplayer_only" )) else if( !Q_stricmp( token, "multiplayer_only" ))
{ {
GameInfo->gamemode = GAME_MULTIPLAYER_ONLY; GameInfo->gamemode = GAME_MULTIPLAYER_ONLY;
Q_strncpy( GameInfo->type, "Multiplayer", sizeof( GameInfo->type )); Q_strncpy( GameInfo->type, "Multiplayer", sizeof( GameInfo->type ));
@ -739,6 +745,7 @@ void FS_ParseGenericGameInfo( gameinfo_t *GameInfo, const char *buf, const qbool
Q_strncpy( GameInfo->type, token, sizeof( GameInfo->type )); Q_strncpy( GameInfo->type, token, sizeof( GameInfo->type ));
} }
} }
}
// valid for both // valid for both
else if( !Q_stricmp( token, "version" )) else if( !Q_stricmp( token, "version" ))
{ {

Loading…
Cancel
Save