From e6e1d6b042697a258547e8fa883284eac5df6b0b Mon Sep 17 00:00:00 2001 From: toaster Date: Sat, 21 Jan 2023 23:46:14 +0000 Subject: [PATCH] Re-implement spectator vertical look - Hold lookback to pivot the spectator's vertical aiming angle - Forward/backwards item throw/trick input aims up/down - Overrides forwards/backwards movement while lookback is held - Changes the spectator text to indicate that it's in aiming mode --- src/g_game.c | 18 +++++++++++++----- src/st_stuff.c | 12 ++++++++++-- 2 files changed, 23 insertions(+), 7 deletions(-) diff --git a/src/g_game.c b/src/g_game.c index 6cea62b1a..361953305 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -1105,6 +1105,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics, UINT8 ssplayer) forward = 0; cmd->turning = 0; + cmd->aiming = 0; if (joystickvector.xaxis != 0) { @@ -1123,14 +1124,21 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics, UINT8 ssplayer) cmd->buttons |= BT_BRAKE; } - if (joystickvector.yaxis < 0) + if (G_PlayerInputDown(forplayer, gc_lookback, 0)) { - forward += MAXPLMOVE; + cmd->aiming -= joystickvector.yaxis; } - - if (joystickvector.yaxis > 0) + else { - forward -= MAXPLMOVE; + if (joystickvector.yaxis < 0) + { + forward += MAXPLMOVE; + } + + if (joystickvector.yaxis > 0) + { + forward -= MAXPLMOVE; + } } } else diff --git a/src/st_stuff.c b/src/st_stuff.c index 3f7e793eb..8964dd1ec 100644 --- a/src/st_stuff.c +++ b/src/st_stuff.c @@ -1109,8 +1109,16 @@ static void ST_overlayDrawer(void) { V_DrawString(2, BASEVIDHEIGHT-40, V_HUDTRANSHALF|V_SPLITSCREEN|V_YELLOWMAP|V_SNAPTOLEFT|V_SNAPTOBOTTOM, M_GetText("- SPECTATING -")); V_DrawString(2, BASEVIDHEIGHT-30, V_HUDTRANSHALF|V_SPLITSCREEN|V_SNAPTOLEFT|V_SNAPTOBOTTOM, itemtxt); - V_DrawString(2, BASEVIDHEIGHT-20, V_HUDTRANSHALF|V_SPLITSCREEN|V_SNAPTOLEFT|V_SNAPTOBOTTOM, M_GetText("Accelerate - Float")); - V_DrawString(2, BASEVIDHEIGHT-10, V_HUDTRANSHALF|V_SPLITSCREEN|V_SNAPTOLEFT|V_SNAPTOBOTTOM, M_GetText("Brake - Sink")); + if (stplyr->cmd.buttons & BT_LOOKBACK) + { + V_DrawString(2, BASEVIDHEIGHT-20, V_HUDTRANSHALF|V_SPLITSCREEN|V_SNAPTOLEFT|V_SNAPTOBOTTOM, M_GetText("Lookback - Camera pivot")); + V_DrawString(2, BASEVIDHEIGHT-10, V_HUDTRANSHALF|V_SPLITSCREEN|V_SNAPTOLEFT|V_SNAPTOBOTTOM, M_GetText("Aim forward/backward")); + } + else + { + V_DrawString(2, BASEVIDHEIGHT-20, V_HUDTRANSHALF|V_SPLITSCREEN|V_SNAPTOLEFT|V_SNAPTOBOTTOM, M_GetText("Accelerate - Float")); + V_DrawString(2, BASEVIDHEIGHT-10, V_HUDTRANSHALF|V_SPLITSCREEN|V_SNAPTOLEFT|V_SNAPTOBOTTOM, M_GetText("Brake - Sink")); + } } } }