From 5eb5c087d04604bc4387a1c7a252bafce5eec7de Mon Sep 17 00:00:00 2001 From: toaster Date: Sat, 23 Mar 2024 20:51:46 +0000 Subject: [PATCH 1/2] Evaluation: Hide overlay text in DEVELOP if soundtest override greater than the number of evaluation types is in play --- src/f_finale.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/f_finale.c b/src/f_finale.c index 15c863b9e..d22b7423d 100644 --- a/src/f_finale.c +++ b/src/f_finale.c @@ -1276,6 +1276,11 @@ void F_GameEvaluationDrawer(void) } } +#ifdef DEVELOP + if (cv_soundtest.value > EVAL_MAX) + return; +#endif + V_DrawCenteredGamemodeString( BASEVIDWIDTH/2, 15, From 91a7adb621a7ef36456997732c2de2e88cc8caf6 Mon Sep 17 00:00:00 2001 From: toaster Date: Sat, 23 Mar 2024 20:53:14 +0000 Subject: [PATCH 2/2] cv_freecam_speed: Additional behaviour - == 0 no-sells all movement - less than 0 divides speed by that amount, instead of multiplying --- src/cvars.cpp | 2 +- src/p_user.c | 17 +++++++++++++---- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/src/cvars.cpp b/src/cvars.cpp index dd4f09336..c41f66514 100644 --- a/src/cvars.cpp +++ b/src/cvars.cpp @@ -1174,7 +1174,7 @@ consvar_t cv_fov[MAXSPLITSCREENPLAYERS] = { Player("fov4", "90").floating_point().min_max(60*FRACUNIT, 179*FRACUNIT).onchange(Fov_OnChange).dont_save(), }; -consvar_t cv_freecam_speed = Player("freecam_speed", "1").min_max(1, 10).dont_save(); +consvar_t cv_freecam_speed = Player("freecam_speed", "1").min_max(-64, 10).dont_save(); void I_JoyScale(void); void I_JoyScale2(void); diff --git a/src/p_user.c b/src/p_user.c index e3d28ff21..7fe77b316 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -2948,10 +2948,15 @@ void P_DemoCameraMovement(camera_t *cam, UINT8 num) cam->angle += turning; // camera movement: - if (!cam->button_a_held) + if (!cam->button_a_held && cv_freecam_speed.value) { int dir = ((cmd->buttons & BT_ACCELERATE) ? 1 : 0) + ((cmd->buttons & BT_BRAKE) ? -1 : 0); - fixed_t spd = 32*mapobjectscale*cv_freecam_speed.value; + + fixed_t spd = 32*mapobjectscale; + if (cv_freecam_speed.value > 1) + spd *= cv_freecam_speed.value; + else if (cv_freecam_speed.value < -1) + spd /= -cv_freecam_speed.value; switch (dir) { @@ -3029,9 +3034,13 @@ void P_DemoCameraMovement(camera_t *cam, UINT8 num) cam->momx = cam->momy = cam->momz = 0; - if (cmd->forwardmove != 0) + if (cmd->forwardmove != 0 && cv_freecam_speed.value) { - fixed_t spd = cmd->forwardmove*mapobjectscale*cv_freecam_speed.value; + fixed_t spd = cmd->forwardmove*mapobjectscale; + if (cv_freecam_speed.value > 1) + spd *= cv_freecam_speed.value; + else if (cv_freecam_speed.value < -1) + spd /= -cv_freecam_speed.value; thrustangle = cam->angle >> ANGLETOFINESHIFT;