From ed61140504bde19a804899137ee0c6e70d4ab1bb Mon Sep 17 00:00:00 2001 From: Sally Coolatta Date: Wed, 14 Sep 2022 05:13:26 -0400 Subject: [PATCH] Funny mode fixes --- src/d_clisrv.c | 2 +- src/d_netcmd.c | 2 +- src/d_netcmd.h | 1 + src/p_saveg.c | 4 ++++ 4 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/d_clisrv.c b/src/d_clisrv.c index a7193327d..f89fccf20 100644 --- a/src/d_clisrv.c +++ b/src/d_clisrv.c @@ -5531,7 +5531,7 @@ boolean TryRunTics(tic_t realtics) ps_tictime = I_GetPreciseTime(); G_Ticker((gametic % NEWTICRATERATIO) == 0); - if (gametic % TICRATE == 0) + if (Playing() && (gametic % TICRATE == 0)) { Schedule_Run(); diff --git a/src/d_netcmd.c b/src/d_netcmd.c index 62bc4ee29..eb6e630c0 100644 --- a/src/d_netcmd.c +++ b/src/d_netcmd.c @@ -604,7 +604,7 @@ const char *automate_names[AEV__MAX] = "VoteStart" // AEV_VOTESTART }; -static UINT32 livestudioaudience_timer = 90; +UINT32 livestudioaudience_timer = 90; /// \warning Keep this up-to-date if you add/remove/rename net text commands const char *netxcmdnames[MAXNETXCMD - 1] = diff --git a/src/d_netcmd.h b/src/d_netcmd.h index 7125e3b27..3a67fc458 100644 --- a/src/d_netcmd.h +++ b/src/d_netcmd.h @@ -276,6 +276,7 @@ void Automate_Run(automateEvents_t type); void Automate_Set(automateEvents_t type, const char *command); void Automate_Clear(void); +extern UINT32 livestudioaudience_timer; void LiveStudioAudience(void); // used for the player setup menu diff --git a/src/p_saveg.c b/src/p_saveg.c index f35ddc305..be02b13c6 100644 --- a/src/p_saveg.c +++ b/src/p_saveg.c @@ -4553,6 +4553,8 @@ static void P_NetArchiveMisc(boolean resending) else WRITEUINT8(save_p, 0x2e); + WRITEUINT32(save_p, livestudioaudience_timer); + // Only the server uses this, but it // needs synched for remote admins anyway. WRITEUINT32(save_p, schedule_len); @@ -4712,6 +4714,8 @@ static inline boolean P_NetUnArchiveMisc(boolean reloading) if (READUINT8(save_p) == 0x2f) paused = true; + livestudioaudience_timer = READUINT32(save_p); + // Only the server uses this, but it // needs synched for remote admins anyway. Schedule_Clear();