mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2025-03-21 18:32:08 +00:00
G_NewGametype
This commit is contained in:
parent
6660d63028
commit
15862ed02c
4 changed files with 33 additions and 0 deletions
|
@ -383,6 +383,8 @@ boolean timedemo_quit;
|
|||
|
||||
INT16 gametype = GT_COOP;
|
||||
UINT32 gametyperules = 0;
|
||||
INT16 numgametypes = (GT_CTF + 1);
|
||||
|
||||
boolean splitscreen = false;
|
||||
boolean circuitmap = false;
|
||||
INT32 adminplayers[MAXPLAYERS];
|
||||
|
|
|
@ -85,6 +85,8 @@ extern boolean multiplayer;
|
|||
|
||||
extern INT16 gametype;
|
||||
extern UINT32 gametyperules;
|
||||
extern INT16 numgametypes;
|
||||
|
||||
extern boolean splitscreen;
|
||||
extern boolean circuitmap; // Does this level have 'circuit mode'?
|
||||
extern boolean fromlevelselect;
|
||||
|
|
27
src/g_game.c
27
src/g_game.c
|
@ -3094,6 +3094,33 @@ void G_SetGametype(INT16 gtype)
|
|||
CONS_Printf("Gametype set to %s (%d)\n", Gametype_Names[gametype], gametype);
|
||||
}
|
||||
|
||||
//
|
||||
// G_NewGametype
|
||||
//
|
||||
// Create a new gametype. Returns the new gametype number.
|
||||
//
|
||||
INT16 G_NewGametype(UINT32 rules)
|
||||
{
|
||||
INT32 i;
|
||||
INT16 newgtype = numgametypes;
|
||||
numgametypes++;
|
||||
|
||||
// Set gametype rules.
|
||||
gametypedefaultrules[newgtype] = numgametypes;
|
||||
Gametype_Names[newgtype] = "???";
|
||||
|
||||
// Update gametype_cons_t accordingly.
|
||||
for (i = 0; i < numgametypes; i++)
|
||||
{
|
||||
gametype_cons_t[i].value = i;
|
||||
gametype_cons_t[i].strvalue = Gametype_Names[i];
|
||||
}
|
||||
gametype_cons_t[NUMGAMETYPES].value = 0;
|
||||
gametype_cons_t[NUMGAMETYPES].strvalue = NULL;
|
||||
|
||||
return newgtype;
|
||||
}
|
||||
|
||||
//
|
||||
// G_GetGametypeByName
|
||||
//
|
||||
|
|
|
@ -202,6 +202,8 @@ void G_StopDemo(void);
|
|||
boolean G_CheckDemoStatus(void);
|
||||
|
||||
void G_SetGametype(INT16 gametype);
|
||||
INT16 G_NewGametype(UINT32 rules);
|
||||
|
||||
INT32 G_GetGametypeByName(const char *gametypestr);
|
||||
boolean G_IsSpecialStage(INT32 mapnum);
|
||||
boolean G_GametypeUsesLives(void);
|
||||
|
|
Loading…
Reference in a new issue