mirror of
https://github.com/fabiangreffrath/woof.git
synced 2025-09-22 11:22:18 -04:00
implement Deathmatch 3.0 (from Crispy Doom) (#595)
This commit is contained in:
parent
3d1f4c2e35
commit
5f5e0e2c19
@ -1773,6 +1773,11 @@ void D_DoomMain(void)
|
||||
if (M_CheckParm ("-deathmatch"))
|
||||
deathmatch = 1;
|
||||
|
||||
// Start a deathmatch 3.0 game. Weapons stay in place and all items respawn
|
||||
// after 30 seconds.
|
||||
if (M_CheckParm ("-dm3"))
|
||||
deathmatch = 3;
|
||||
|
||||
switch ( gamemode )
|
||||
{
|
||||
case retail:
|
||||
|
@ -1005,7 +1005,8 @@ void P_RespawnSpecials (void)
|
||||
mapthing_t* mthing;
|
||||
int i;
|
||||
|
||||
if (deathmatch != 2 || // only respawn items in deathmatch
|
||||
// AX: deathmatch 3 is a Crispy-specific change
|
||||
if ((deathmatch != 2 && deathmatch != 3) || // only respawn items in deathmatch
|
||||
iquehead == iquetail || // nothing left to respawn?
|
||||
leveltime - itemrespawntime[iquetail] < 30*35) // wait 30 seconds
|
||||
return;
|
||||
|
@ -91,7 +91,7 @@ static const char *rekkr_skills[] =
|
||||
};
|
||||
|
||||
static const char *gamemodes[] = { "Co-operative", "Deathmatch",
|
||||
"Deathmatch 2.0" };
|
||||
"Deathmatch 2.0", "Deathmatch 3.0" };
|
||||
|
||||
static char *wads[NUM_WADS];
|
||||
static char *extra_params[NUM_EXTRA_PARAMS];
|
||||
@ -223,6 +223,10 @@ static void StartGame(int multiplayer)
|
||||
{
|
||||
AddCmdLineParameter(exec, "-altdeath");
|
||||
}
|
||||
else if (deathmatch == 3) // AX: this is a Crispy-specific change
|
||||
{
|
||||
AddCmdLineParameter(exec, "-dm3");
|
||||
}
|
||||
|
||||
if (timer > 0)
|
||||
{
|
||||
@ -618,7 +622,7 @@ static txt_window_action_t *WadWindowAction(void)
|
||||
|
||||
static txt_dropdown_list_t *GameTypeDropdown(void)
|
||||
{
|
||||
return TXT_NewDropdownList(&deathmatch, gamemodes, 3);
|
||||
return TXT_NewDropdownList(&deathmatch, gamemodes, 4);
|
||||
}
|
||||
|
||||
// "Start game" menu. This is used for the start server window
|
||||
|
Loading…
x
Reference in New Issue
Block a user