GTR_DEATHMATCHSTARTS

This commit is contained in:
Jaime Passos 2019-12-19 02:26:17 -03:00
parent ebdd9c6257
commit ce0e4201b8
3 changed files with 15 additions and 13 deletions

View File

@ -8874,6 +8874,7 @@ static const char *const GAMETYPERULE_LIST[] = {
"PITYSHIELD",
"DEATHPENALTY",
"NOSPECTATORSPAWN",
"DEATHMATCHSTARTS",
"SPECIALSTAGES",
"EMERALDTOKENS",
"EMERALDHUNT",

View File

@ -411,18 +411,19 @@ enum GameTypeRules
GTR_PITYSHIELD = 1<<14, // Award pity shield
GTR_DEATHPENALTY = 1<<15, // Death score penalty
GTR_NOSPECTATORSPAWN = 1<<16, // For use with GTR_SPECTATORS - spawn in the map instead of with the spectators
GTR_SPECIALSTAGES = 1<<17, // Allow special stages
GTR_EMERALDTOKENS = 1<<18, // Spawn emerald tokens
GTR_EMERALDHUNT = 1<<19, // Emerald Hunt
GTR_SPAWNENEMIES = 1<<20, // Spawn enemies
GTR_ALLOWEXIT = 1<<21, // Allow exit sectors
GTR_CAMPAIGN = 1<<22, // Linear Co-op map progression. Don't allow random maps.
GTR_NOGAMEEND = 1<<23, // Don't end the game. That is, wrap around the maps instead of starting the ending.
GTR_ROUNDENDMESSAGE = 1<<24, // Prints "The round has ended." into the console
GTR_NOTITLECARD = 1<<25, // Don't show the title card
GTR_POINTLIMIT = 1<<26, // Ringslinger point limit
GTR_TIMELIMIT = 1<<27, // Ringslinger time limit
GTR_OVERTIME = 1<<28, // Allow overtime
GTR_DEATHMATCHSTARTS = 1<<17, // Use deathmatch starts
GTR_SPECIALSTAGES = 1<<18, // Allow special stages
GTR_EMERALDTOKENS = 1<<19, // Spawn emerald tokens
GTR_EMERALDHUNT = 1<<20, // Emerald Hunt
GTR_SPAWNENEMIES = 1<<21, // Spawn enemies
GTR_ALLOWEXIT = 1<<22, // Allow exit sectors
GTR_CAMPAIGN = 1<<23, // Linear Co-op map progression. Don't allow random maps.
GTR_NOGAMEEND = 1<<24, // Don't end the game. That is, wrap around the maps instead of starting the ending.
GTR_ROUNDENDMESSAGE = 1<<25, // Prints "The round has ended." into the console
GTR_NOTITLECARD = 1<<26, // Don't show the title card
GTR_POINTLIMIT = 1<<27, // Ringslinger point limit
GTR_TIMELIMIT = 1<<28, // Ringslinger time limit
GTR_OVERTIME = 1<<29, // Allow overtime
};
// String names for gametypes

View File

@ -2583,7 +2583,7 @@ void G_SpawnPlayer(INT32 playernum, boolean starpost)
// -- DM/Tag/CTF-spectator/etc --
// Order: DM->CTF->Coop
else if (gametype == GT_MATCH || gametype == GT_TEAMMATCH || gametype == GT_CTF
else if ((gametyperules & GTR_DEATHMATCHSTARTS) || gametype == GT_MATCH || gametype == GT_TEAMMATCH || gametype == GT_CTF
|| ((gametype == GT_TAG || gametype == GT_HIDEANDSEEK) && !(players[playernum].pflags & PF_TAGIT)))
{
if (!(spawnpoint = G_FindMatchStart(playernum)) // find a DM start