X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=common.c;h=d7023b9837bae246ffa6c09fb2585435f25663a5;hb=a915475ec3441cb67ac0d91abf2c18ba4a7a565e;hp=04de68b959d28ceeebdc23a5027379f8b25ed288;hpb=b3030be8791663d54406b82fd5d307c948bd8bdd;p=xonotic%2Fdarkplaces.git diff --git a/common.c b/common.c index 04de68b9..d7023b98 100644 --- a/common.c +++ b/common.c @@ -33,6 +33,7 @@ cvar_t cmdline = {0, "cmdline","0", "contains commandline the engine was launche char com_token[MAX_INPUTLINE]; int com_argc; const char **com_argv; +int com_selffd = -1; gamemode_t gamemode; const char *gamename; @@ -1420,13 +1421,13 @@ int COM_CheckParm (const char *parm) typedef struct gamemode_info_s { - const char* prog_name; - const char* cmdline; - const char* gamename; - const char* gamedirname1; - const char* gamedirname2; - const char* gamescreenshotname; - const char* gameuserdirname; + const char* prog_name; // not null + const char* cmdline; // not null + const char* gamename; // not null + const char* gamedirname1; // not null + const char* gamedirname2; // null + const char* gamescreenshotname; // not nul + const char* gameuserdirname; // not null } gamemode_info_t; static const gamemode_info_t gamemode_info [GAME_COUNT] = @@ -1506,13 +1507,14 @@ static const gamemode_info_t gamemode_info [GAME_COUNT] = { "omnicide", "-omnicide", "Blood Omnicide", "kain", NULL, "omnicide", "omnicide" }, // GAME_STEELSTORM // COMMANDLINEOPTION: Game: -steelstorm runs the game Steel Storm -{ "steelstorm", "-steelstorm", "Steel Storm", "gamedata", NULL, "steelstorm", "steelstorm" }, +{ "steelstorm", "-steelstorm", "Steel-Storm", "gamedata", NULL, "ss", "steelstorm" }, }; void COM_InitGameType (void) { char name [MAX_OSPATH]; unsigned int i; + int t; FS_StripExtension (com_argv[0], name, sizeof (name)); COM_ToLowerString (name, name, sizeof (name)); @@ -1539,6 +1541,17 @@ void COM_InitGameType (void) gamedirname2 = gamemode_info[gamemode].gamedirname2; gamescreenshotname = gamemode_info[gamemode].gamescreenshotname; gameuserdirname = gamemode_info[gamemode].gameuserdirname; + + if((t = COM_CheckParm("-customgamename")) && t + 1 < com_argc) + gamename = com_argv[t+1]; + if((t = COM_CheckParm("-customgamedirname1")) && t + 1 < com_argc) + gamedirname1 = com_argv[t+1]; + if((t = COM_CheckParm("-customgamedirname2")) && t + 1 < com_argc) + gamedirname2 = *com_argv[t+1] ? com_argv[t+1] : NULL; + if((t = COM_CheckParm("-customgamescreenshotname")) && t + 1 < com_argc) + gamescreenshotname = com_argv[t+1]; + if((t = COM_CheckParm("-customgameuserdirname")) && t + 1 < com_argc) + gameuserdirname = com_argv[t+1]; }