GameTypeRules: Add GTR_NOPOSITION

Says on the tin - introtime == starttime.
This commit is contained in:
toaster 2023-03-26 21:59:38 +01:00
parent d84ee59887
commit 57b1ad15a5
3 changed files with 17 additions and 10 deletions

View file

@ -5854,6 +5854,7 @@ const char *const GAMETYPERULE_LIST[] = {
"NOMP",
"NOCUPSELECT",
"NOPOSITION",
NULL
};

View file

@ -546,10 +546,10 @@ enum GameTypeRules
// Bonus gametype rules
GTR_PRISONS = 1<<10, // Can enter Prison Break mode
GTR_CATCHER = 1<<11, // UFO Catcher (only works with GTR_CIRCUIT)
GTR_ROLLINGSTART = 1<<12, // Rolling start (only works with GTR_CIRCUIT)
GTR_SPECIALSTART = 1<<13, // White fade instant start
GTR_BOSS = 1<<14, // Boss intro and spawning
GTR_CATCHER = 1<<11, // UFO Catcher (only works with GTR_CIRCUIT)
GTR_ROLLINGSTART = 1<<12, // Rolling start (only works with GTR_CIRCUIT)
GTR_SPECIALSTART = 1<<13, // White fade instant start
GTR_BOSS = 1<<14, // Boss intro and spawning
// General purpose rules
GTR_POINTLIMIT = 1<<15, // Reaching point limit ends the round
@ -557,12 +557,13 @@ enum GameTypeRules
GTR_OVERTIME = 1<<17, // Allow overtime behavior
GTR_ENCORE = 1<<18, // Alternate Encore mirroring, scripting, and texture remapping
GTR_TEAMS = 1<<19, // Teams are forced on
GTR_NOTEAMS = 1<<20, // Teams are forced off
GTR_TEAMSTARTS = 1<<21, // Use team-based start positions
GTR_TEAMS = 1<<19, // Teams are forced on
GTR_NOTEAMS = 1<<20, // Teams are forced off
GTR_TEAMSTARTS = 1<<21, // Use team-based start positions
GTR_NOMP = 1<<22, // No multiplayer
GTR_NOCUPSELECT = 1<<23, // Your maps are not selected via cup.
GTR_NOMP = 1<<22, // No multiplayer
GTR_NOCUPSELECT = 1<<23, // Your maps are not selected via cup.
GTR_NOPOSITION = 1<<24, // No POSITION
// free: to and including 1<<31
};

View file

@ -186,7 +186,12 @@ void K_TimerInit(void)
}
}
starttime = (introtime + (3*TICRATE)) + ((2*TICRATE) + (numbulbs * bulbtime)); // Start countdown time, + buffer time
starttime = introtime;
if (!(gametyperules & GTR_NOPOSITION))
{
// Start countdown time + buffer time
starttime += ((3*TICRATE) + ((2*TICRATE) + (numbulbs * bulbtime)));
}
}
K_BattleInit(domodeattack);