mirror of
https://github.com/fabiangreffrath/woof.git
synced 2025-09-24 04:29:34 -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"))
|
if (M_CheckParm ("-deathmatch"))
|
||||||
deathmatch = 1;
|
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 )
|
switch ( gamemode )
|
||||||
{
|
{
|
||||||
case retail:
|
case retail:
|
||||||
|
@ -1005,7 +1005,8 @@ void P_RespawnSpecials (void)
|
|||||||
mapthing_t* mthing;
|
mapthing_t* mthing;
|
||||||
int i;
|
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?
|
iquehead == iquetail || // nothing left to respawn?
|
||||||
leveltime - itemrespawntime[iquetail] < 30*35) // wait 30 seconds
|
leveltime - itemrespawntime[iquetail] < 30*35) // wait 30 seconds
|
||||||
return;
|
return;
|
||||||
|
@ -91,7 +91,7 @@ static const char *rekkr_skills[] =
|
|||||||
};
|
};
|
||||||
|
|
||||||
static const char *gamemodes[] = { "Co-operative", "Deathmatch",
|
static const char *gamemodes[] = { "Co-operative", "Deathmatch",
|
||||||
"Deathmatch 2.0" };
|
"Deathmatch 2.0", "Deathmatch 3.0" };
|
||||||
|
|
||||||
static char *wads[NUM_WADS];
|
static char *wads[NUM_WADS];
|
||||||
static char *extra_params[NUM_EXTRA_PARAMS];
|
static char *extra_params[NUM_EXTRA_PARAMS];
|
||||||
@ -223,6 +223,10 @@ static void StartGame(int multiplayer)
|
|||||||
{
|
{
|
||||||
AddCmdLineParameter(exec, "-altdeath");
|
AddCmdLineParameter(exec, "-altdeath");
|
||||||
}
|
}
|
||||||
|
else if (deathmatch == 3) // AX: this is a Crispy-specific change
|
||||||
|
{
|
||||||
|
AddCmdLineParameter(exec, "-dm3");
|
||||||
|
}
|
||||||
|
|
||||||
if (timer > 0)
|
if (timer > 0)
|
||||||
{
|
{
|
||||||
@ -618,7 +622,7 @@ static txt_window_action_t *WadWindowAction(void)
|
|||||||
|
|
||||||
static txt_dropdown_list_t *GameTypeDropdown(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
|
// "Start game" menu. This is used for the start server window
|
||||||
|
Loading…
x
Reference in New Issue
Block a user