Allow disabling pausing entirely when online

This commit is contained in:
Boondorl 2025-06-28 19:28:10 -04:00 committed by Rachael Alexanderson
commit d182bd9411
3 changed files with 27 additions and 6 deletions

View file

@ -159,8 +159,14 @@ CVAR(Bool, vid_lowerinbackground, true, CVAR_ARCHIVE|CVAR_GLOBALCONFIG)
CVAR(Bool, net_ticbalance, false, CVAR_SERVERINFO | CVAR_NOSAVE) // Currently deprecated, but may be brought back later.
CVAR(Bool, net_extratic, false, CVAR_SERVERINFO | CVAR_NOSAVE)
CVAR(Bool, net_disablepause, false, CVAR_SERVERINFO | CVAR_NOSAVE)
CVAR(Bool, net_repeatableactioncooldown, true, CVAR_SERVERINFO | CVAR_NOSAVE)
CUSTOM_CVAR(Int, net_disablepause, 0, CVAR_SERVERINFO | CVAR_NOSAVE)
{
if (self < 0)
self = 0;
else if (self > 2)
self = 2;
}
CUSTOM_CVAR(Int, net_cutscenereadytype, RT_VOTE, CVAR_SERVERINFO | CVAR_NOSAVE)
{
if (self < RT_VOTE)

View file

@ -127,7 +127,7 @@ CVAR (Bool, cl_waitforsave, true, CVAR_ARCHIVE | CVAR_GLOBALCONFIG);
CVAR (Bool, enablescriptscreenshot, false, CVAR_ARCHIVE | CVAR_GLOBALCONFIG);
CVAR (Bool, cl_restartondeath, false, CVAR_ARCHIVE | CVAR_GLOBALCONFIG);
EXTERN_CVAR (Float, con_midtime);
EXTERN_CVAR(Bool, net_disablepause)
EXTERN_CVAR(Int, net_disablepause)
//==========================================================================
//
@ -351,10 +351,18 @@ CCMD (land)
CCMD (pause)
{
if (netgame && !players[consoleplayer].settings_controller && net_disablepause)
if (netgame)
{
Printf("Only settings controllers can currently (un)pause the game\n");
return;
if (net_disablepause == 2 && (!paused || !players[consoleplayer].settings_controller))
{
Printf("Pausing the game is currently disabled\n");
return;
}
else if (net_disablepause == 1 && !players[consoleplayer].settings_controller)
{
Printf("Only settings controllers can currently (un)pause the game\n");
return;
}
}
sendpause = true;

View file

@ -2440,7 +2440,7 @@ OptionMenu NetworkOptions protected
StaticText " "
StaticText "$NETMNU_HOSTOPTIONS", 1
Option "$NETMNU_EXTRATICS", "net_extratic", "OnOff"
Option "$NETMNU_DISABLEPAUSE", "net_disablepause", "OnOff"
Option "$NETMNU_DISABLEPAUSE", "net_disablepause", "PauseTypes"
Option "$NETMNU_READYTYPE", "net_cutscenereadytype", "ReadyTypes"
Slider "$NETMNU_READYPERCENT", "net_cutscenereadypercent", "0", "1", "0.05", 2
NumberField "$NETMNU_READYCOUNTDOWN", "net_cutscenecountdown", 0, 300, 5
@ -2448,6 +2448,13 @@ OptionMenu NetworkOptions protected
}
OptionValue "PauseTypes"
{
0, "$OPTVAL_OFF"
1, "$OPTVAL_HOSTONLY"
2, "$OPTVAL_ON"
}
OptionValue "ReadyTypes"
{
0, "$OPTVAL_VOTE"