From 8e190932e7c346aba4e585b97a3ad6fbc6785b41 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 11:21:25 -0500 Subject: [PATCH 01/21] Add gc_systemmenu from Kart --- src/g_input.c | 1 + src/g_input.h | 1 + src/m_menu.c | 3 +++ 3 files changed, 5 insertions(+) diff --git a/src/g_input.c b/src/g_input.c index 1ddfae81..864cee38 100644 --- a/src/g_input.c +++ b/src/g_input.c @@ -1190,6 +1190,7 @@ void G_Controldefault(void) gamecontrol[gc_jump ][0] = KEY_SPACE; gamecontrol[gc_console ][0] = KEY_CONSOLE; gamecontrol[gc_pause ][0] = 'p'; + gamecontrol[gc_systemmenu ][0] = KEY_JOY1+7; // Start #ifdef WMINPUT gamecontrol[gc_forward ][0] = KEY_JOY1+02; //UP gamecontrol[gc_backward ][0] = KEY_JOY1+03; //DOWN diff --git a/src/g_input.h b/src/g_input.h index 6dc99ac5..18fd6ac2 100644 --- a/src/g_input.h +++ b/src/g_input.h @@ -118,6 +118,7 @@ typedef enum gc_jump, gc_console, gc_pause, + gc_systemmenu, gc_custom1, // Lua scriptable gc_custom2, // Lua scriptable gc_custom3, // Lua scriptable diff --git a/src/m_menu.c b/src/m_menu.c index 636e804f..8f20c69f 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -1073,6 +1073,7 @@ static menuitem_t OP_MiscControlsMenu[] = {IT_CALL | IT_STRING2, NULL, "Custom Action 3", M_ChangeControl, gc_custom3 }, {IT_CALL | IT_STRING2, NULL, "Pause", M_ChangeControl, gc_pause }, + {IT_CALL | IT_STRING2, NULL, "Open/Close Menu (ESC)", M_ChangeControl, gc_systemmenu }, {IT_CALL | IT_STRING2, NULL, "Console", M_ChangeControl, gc_console }, }; @@ -2172,6 +2173,8 @@ boolean M_Responder(event_t *ev) if (ch == -1) return false; + else if (ch == gamecontrol[gc_systemmenu][0] || ch == gamecontrol[gc_systemmenu][1]) // allow remappable ESC key + ch = KEY_ESCAPE; // F-Keys if (!menuactive) From 2a87093ecedf210c30adde9d9854b362e5588d32 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 11:31:48 -0500 Subject: [PATCH 02/21] Add gc_screenshot and gc_recordgif from Kart --- src/g_input.c | 2 ++ src/g_input.h | 2 ++ src/m_menu.c | 2 ++ src/m_misc.c | 4 ++-- 4 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/g_input.c b/src/g_input.c index 864cee38..1884f38b 100644 --- a/src/g_input.c +++ b/src/g_input.c @@ -1190,6 +1190,8 @@ void G_Controldefault(void) gamecontrol[gc_jump ][0] = KEY_SPACE; gamecontrol[gc_console ][0] = KEY_CONSOLE; gamecontrol[gc_pause ][0] = 'p'; + gamecontrol[gc_screenshot ][0] = KEY_F8; + gamecontrol[gc_recordgif ][0] = KEY_F9; gamecontrol[gc_systemmenu ][0] = KEY_JOY1+7; // Start #ifdef WMINPUT gamecontrol[gc_forward ][0] = KEY_JOY1+02; //UP diff --git a/src/g_input.h b/src/g_input.h index 18fd6ac2..d618b0da 100644 --- a/src/g_input.h +++ b/src/g_input.h @@ -119,6 +119,8 @@ typedef enum gc_console, gc_pause, gc_systemmenu, + gc_screenshot, + gc_recordgif, gc_custom1, // Lua scriptable gc_custom2, // Lua scriptable gc_custom3, // Lua scriptable diff --git a/src/m_menu.c b/src/m_menu.c index 8f20c69f..2b88f6c5 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -1073,6 +1073,8 @@ static menuitem_t OP_MiscControlsMenu[] = {IT_CALL | IT_STRING2, NULL, "Custom Action 3", M_ChangeControl, gc_custom3 }, {IT_CALL | IT_STRING2, NULL, "Pause", M_ChangeControl, gc_pause }, + {IT_CALL | IT_STRING2, NULL, "Screenshot", M_ChangeControl, gc_screenshot }, + {IT_CALL | IT_STRING2, NULL, "Toggle GIF Recording", M_ChangeControl, gc_recordgif }, {IT_CALL | IT_STRING2, NULL, "Open/Close Menu (ESC)", M_ChangeControl, gc_systemmenu }, {IT_CALL | IT_STRING2, NULL, "Console", M_ChangeControl, gc_console }, }; diff --git a/src/m_misc.c b/src/m_misc.c index cd87c984..223a652d 100644 --- a/src/m_misc.c +++ b/src/m_misc.c @@ -1494,9 +1494,9 @@ boolean M_ScreenshotResponder(event_t *ev) return false; ch = ev->data1; - if (ch == KEY_F8) + if (ch == gamecontrol[gc_screenshot][0] || ch == gamecontrol[gc_screenshot][1]) // remappable F8 M_ScreenShot(); - else if (ch == KEY_F9) + else if (ch == gamecontrol[gc_recordgif][0] || ch == gamecontrol[gc_recordgif][1]) // remappable F9 ((moviemode) ? M_StopMovie : M_StartMovie)(); else return false; From 31f23fda8dee9582617567c37f750f2f3e247334 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 11:50:57 -0500 Subject: [PATCH 03/21] Add gc_viewpoint from Kart --- src/g_game.c | 3 ++- src/g_input.c | 1 + src/g_input.h | 1 + src/m_menu.c | 1 + 4 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/g_game.c b/src/g_game.c index b1a3720e..f313b4d5 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -1677,7 +1677,8 @@ static INT32 camtoggledelay, camtoggledelay2 = 0; boolean G_Responder(event_t *ev) { // allow spy mode changes even during the demo - if (gamestate == GS_LEVEL && ev->type == ev_keydown && ev->data1 == KEY_F12) + if (gamestate == GS_LEVEL && ev->type == ev_keydown + && (ev->data1 == gamecontrol[gc_viewpoint][0] || ev->data1 == gamecontrol[gc_viewpoint][1])) { if (splitscreen || !netgame) displayplayer = consoleplayer; diff --git a/src/g_input.c b/src/g_input.c index 1884f38b..489806d8 100644 --- a/src/g_input.c +++ b/src/g_input.c @@ -1192,6 +1192,7 @@ void G_Controldefault(void) gamecontrol[gc_pause ][0] = 'p'; gamecontrol[gc_screenshot ][0] = KEY_F8; gamecontrol[gc_recordgif ][0] = KEY_F9; + gamecontrol[gc_viewpoint ][0] = KEY_F12; gamecontrol[gc_systemmenu ][0] = KEY_JOY1+7; // Start #ifdef WMINPUT gamecontrol[gc_forward ][0] = KEY_JOY1+02; //UP diff --git a/src/g_input.h b/src/g_input.h index d618b0da..557fb3bf 100644 --- a/src/g_input.h +++ b/src/g_input.h @@ -121,6 +121,7 @@ typedef enum gc_systemmenu, gc_screenshot, gc_recordgif, + gc_viewpoint, gc_custom1, // Lua scriptable gc_custom2, // Lua scriptable gc_custom3, // Lua scriptable diff --git a/src/m_menu.c b/src/m_menu.c index 2b88f6c5..381029a0 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -1076,6 +1076,7 @@ static menuitem_t OP_MiscControlsMenu[] = {IT_CALL | IT_STRING2, NULL, "Screenshot", M_ChangeControl, gc_screenshot }, {IT_CALL | IT_STRING2, NULL, "Toggle GIF Recording", M_ChangeControl, gc_recordgif }, {IT_CALL | IT_STRING2, NULL, "Open/Close Menu (ESC)", M_ChangeControl, gc_systemmenu }, + {IT_CALL | IT_STRING2, NULL, "Change Viewpoint", M_ChangeControl, gc_viewpoint }, {IT_CALL | IT_STRING2, NULL, "Console", M_ChangeControl, gc_console }, }; From 60b16289e5be95212c6c4723b0d3a7c15956158d Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 12:11:03 -0500 Subject: [PATCH 04/21] Change spectator string for "Press F12 to watch" --- src/locale/en.po | 2 +- src/locale/srb2.pot | 2 +- src/st_stuff.c | 17 ++++++++++++++--- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/src/locale/en.po b/src/locale/en.po index 2665082a..517ad488 100644 --- a/src/locale/en.po +++ b/src/locale/en.po @@ -3629,7 +3629,7 @@ msgid "another castle!" msgstr "" #: st_stuff.c:2328 st_stuff.c:2334 st_stuff.c:2356 -msgid "Press F12 to watch another player." +msgid "Press Viewpoint to watch another player." msgstr "" #: st_stuff.c:2333 diff --git a/src/locale/srb2.pot b/src/locale/srb2.pot index 37d14f8b..46c13cc2 100644 --- a/src/locale/srb2.pot +++ b/src/locale/srb2.pot @@ -3820,7 +3820,7 @@ msgid "another castle!" msgstr "" #: st_stuff.c:2092 st_stuff.c:2098 st_stuff.c:2120 -msgid "Press F12 to watch another player." +msgid "Press Viewpoint to watch another player." msgstr "" #: st_stuff.c:2097 diff --git a/src/st_stuff.c b/src/st_stuff.c index f2e62fed..15ff8d64 100644 --- a/src/st_stuff.c +++ b/src/st_stuff.c @@ -28,6 +28,7 @@ #include "m_menu.h" #include "m_cheat.h" #include "p_setup.h" // NiGHTS grading +#include "g_input.h" // Viewpoint string //random index #include "m_random.h" @@ -1870,13 +1871,23 @@ static void ST_overlayDrawer(void) if (!hu_showscores && !splitscreen && netgame && displayplayer == consoleplayer) { + // Build the control string for viewpoint switching + // Longest control string goes to WII's DBLSEC_JOYMINUS_CC, at 18 chars + char secondcontrol[4+20]; + char viewpointprompt[32+20]; + if (gamecontrol[gc_viewpoint][1]) + snprintf(secondcontrol, 3+20, " or %s", G_KeynumToString(gamecontrol[gc_viewpoint][1])); + else + secondcontrol[0] = 0; + snprintf(viewpointprompt, 32+20, "Press %s%s to watch another player.", G_KeynumToString(gamecontrol[gc_viewpoint][0]), secondcontrol); + if (G_GametypeUsesLives() && stplyr->lives <= 0 && countdown != 1) - V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(132), 0, M_GetText("Press F12 to watch another player.")); + V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(132), 0, M_GetText(viewpointprompt)); else if (gametype == GT_HIDEANDSEEK && (!stplyr->spectator && !(stplyr->pflags & PF_TAGIT)) && (leveltime > hidetime * TICRATE)) { V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(116), 0, M_GetText("You cannot move while hiding.")); - V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(132), 0, M_GetText("Press F12 to watch another player.")); + V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(132), 0, M_GetText(viewpointprompt)); } else if (!G_PlatformGametype() && stplyr->playerstate == PST_DEAD && stplyr->lives) //Death overrides spectator text. { @@ -1899,7 +1910,7 @@ static void ST_overlayDrawer(void) V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(132), V_HUDTRANSHALF, M_GetText("You cannot join the game until the stage has ended.")); else V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(132), V_HUDTRANSHALF, M_GetText("Press Fire to enter the game.")); - V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(148), V_HUDTRANSHALF, M_GetText("Press F12 to watch another player.")); + V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(148), V_HUDTRANSHALF, M_GetText(viewpointprompt)); V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(164), V_HUDTRANSHALF, M_GetText("Press Jump to float and Spin to sink.")); } } From 5314c0e36b02e8d774b76eb7f874d699380743de Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 12:12:25 -0500 Subject: [PATCH 05/21] Make F12 spectator string constant because of wrapping issues --- src/st_stuff.c | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/src/st_stuff.c b/src/st_stuff.c index 15ff8d64..44b1ebba 100644 --- a/src/st_stuff.c +++ b/src/st_stuff.c @@ -1871,23 +1871,13 @@ static void ST_overlayDrawer(void) if (!hu_showscores && !splitscreen && netgame && displayplayer == consoleplayer) { - // Build the control string for viewpoint switching - // Longest control string goes to WII's DBLSEC_JOYMINUS_CC, at 18 chars - char secondcontrol[4+20]; - char viewpointprompt[32+20]; - if (gamecontrol[gc_viewpoint][1]) - snprintf(secondcontrol, 3+20, " or %s", G_KeynumToString(gamecontrol[gc_viewpoint][1])); - else - secondcontrol[0] = 0; - snprintf(viewpointprompt, 32+20, "Press %s%s to watch another player.", G_KeynumToString(gamecontrol[gc_viewpoint][0]), secondcontrol); - if (G_GametypeUsesLives() && stplyr->lives <= 0 && countdown != 1) - V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(132), 0, M_GetText(viewpointprompt)); + V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(132), 0, M_GetText("Press Viewpoint Key to watch a player.")); else if (gametype == GT_HIDEANDSEEK && (!stplyr->spectator && !(stplyr->pflags & PF_TAGIT)) && (leveltime > hidetime * TICRATE)) { V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(116), 0, M_GetText("You cannot move while hiding.")); - V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(132), 0, M_GetText(viewpointprompt)); + V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(132), 0, M_GetText("Press Viewpoint Key to watch a player.")); } else if (!G_PlatformGametype() && stplyr->playerstate == PST_DEAD && stplyr->lives) //Death overrides spectator text. { @@ -1910,7 +1900,7 @@ static void ST_overlayDrawer(void) V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(132), V_HUDTRANSHALF, M_GetText("You cannot join the game until the stage has ended.")); else V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(132), V_HUDTRANSHALF, M_GetText("Press Fire to enter the game.")); - V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(148), V_HUDTRANSHALF, M_GetText(viewpointprompt)); + V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(148), V_HUDTRANSHALF, M_GetText("Press Viewpoint Key to watch a player.")); V_DrawCenteredString(BASEVIDWIDTH/2, STRINGY(164), V_HUDTRANSHALF, M_GetText("Press Jump to float and Spin to sink.")); } } From 3d8bc8549497977ad3104b570119c635b4a457f7 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 12:19:41 -0500 Subject: [PATCH 06/21] Forgot config strings for menu keys --- src/g_input.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/g_input.c b/src/g_input.c index 489806d8..44d9f2b2 100644 --- a/src/g_input.c +++ b/src/g_input.c @@ -990,6 +990,10 @@ static const char *gamecontrolname[num_gamecontrols] = "jump", "console", "pause", + "systemmenu", + "screenshot", + "recordgif", + "viewpoint", "custom1", "custom2", "custom3", From 6c78af354294948503f3e2f45aa86dd1818953f2 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 12:20:19 -0500 Subject: [PATCH 07/21] Missed (unused?) viewpoint strings --- src/locale/en.po | 2 +- src/locale/srb2.pot | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/locale/en.po b/src/locale/en.po index 517ad488..ce451080 100644 --- a/src/locale/en.po +++ b/src/locale/en.po @@ -3629,7 +3629,7 @@ msgid "another castle!" msgstr "" #: st_stuff.c:2328 st_stuff.c:2334 st_stuff.c:2356 -msgid "Press Viewpoint to watch another player." +msgid "Press Viewpoint Key to watch a player." msgstr "" #: st_stuff.c:2333 diff --git a/src/locale/srb2.pot b/src/locale/srb2.pot index 46c13cc2..c61cbcc9 100644 --- a/src/locale/srb2.pot +++ b/src/locale/srb2.pot @@ -3820,7 +3820,7 @@ msgid "another castle!" msgstr "" #: st_stuff.c:2092 st_stuff.c:2098 st_stuff.c:2120 -msgid "Press Viewpoint to watch another player." +msgid "Press Viewpoint Key to watch a player." msgstr "" #: st_stuff.c:2097 From 06faf6ffe49d7be296ef9203381e7b342523f570 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 12:36:42 -0500 Subject: [PATCH 08/21] Unneeded input header in st_stuff --- src/st_stuff.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/st_stuff.c b/src/st_stuff.c index 44b1ebba..1f8dbbf6 100644 --- a/src/st_stuff.c +++ b/src/st_stuff.c @@ -28,7 +28,6 @@ #include "m_menu.h" #include "m_cheat.h" #include "p_setup.h" // NiGHTS grading -#include "g_input.h" // Viewpoint string //random index #include "m_random.h" From 78dde93f3ed448fa8142bad710fd662846089dda Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 03:16:55 -0500 Subject: [PATCH 09/21] Remap menu actions to better joy keys --- src/m_menu.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/m_menu.c b/src/m_menu.c index 636e804f..bec3529d 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -2088,7 +2088,6 @@ boolean M_Responder(event_t *ev) { case KEY_MOUSE1: case KEY_JOY1: - case KEY_JOY1 + 2: ch = KEY_ENTER; break; case KEY_JOY1 + 3: @@ -2096,6 +2095,9 @@ boolean M_Responder(event_t *ev) break; case KEY_MOUSE1 + 1: case KEY_JOY1 + 1: + ch = KEY_ESCAPE; + break; + case KEY_JOY1 + 2: ch = KEY_BACKSPACE; break; case KEY_HAT1: From 6dd44ca1deb5dfce329abadc699811c4f202458c Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 03:27:52 -0500 Subject: [PATCH 10/21] Change PC axis defaults to 360-friendly values --- src/g_game.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/g_game.c b/src/g_game.c index b1a3720e..3e160dfe 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -387,7 +387,7 @@ consvar_t cv_lookaxis = {"joyaxis_look", "RStick.Y", CV_SAVE, joyaxis_cons_t, NU consvar_t cv_fireaxis = {"joyaxis_fire", "LAnalog", CV_SAVE, joyaxis_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; consvar_t cv_firenaxis = {"joyaxis_firenormal", "RAnalog", CV_SAVE, joyaxis_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; #else -consvar_t cv_turnaxis = {"joyaxis_turn", "X-Axis", CV_SAVE, joyaxis_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; +consvar_t cv_turnaxis = {"joyaxis_turn", "X-Rudder", CV_SAVE, joyaxis_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; #ifdef PSP consvar_t cv_moveaxis = {"joyaxis_move", "None", CV_SAVE, joyaxis_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; #else @@ -401,17 +401,17 @@ consvar_t cv_lookaxis = {"joyaxis_look", "Alt Y-Axis", CV_SAVE, joyaxis_cons_t, #elif defined (PSP) consvar_t cv_sideaxis = {"joyaxis_side", "None", CV_SAVE, joyaxis_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; #else -consvar_t cv_sideaxis = {"joyaxis_side", "Z-Axis", CV_SAVE, joyaxis_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; +consvar_t cv_sideaxis = {"joyaxis_side", "X-Axis", CV_SAVE, joyaxis_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; #endif #ifndef _XBOX #ifdef PSP consvar_t cv_lookaxis = {"joyaxis_look", "Y-Axis", CV_SAVE, joyaxis_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; #else -consvar_t cv_lookaxis = {"joyaxis_look", "None", CV_SAVE, joyaxis_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; +consvar_t cv_lookaxis = {"joyaxis_look", "Y-Rudder-", CV_SAVE, joyaxis_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; #endif #endif -consvar_t cv_fireaxis = {"joyaxis_fire", "None", CV_SAVE, joyaxis_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; -consvar_t cv_firenaxis = {"joyaxis_firenormal", "None", CV_SAVE, joyaxis_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; +consvar_t cv_fireaxis = {"joyaxis_fire", "Z-Axis", CV_SAVE, joyaxis_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; +consvar_t cv_firenaxis = {"joyaxis_firenormal", "Z-Axis-", CV_SAVE, joyaxis_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; #endif #if defined (_WII) || defined (WMINPUT) From 6bf31492b72c2aaf1a1da9a4510c8d98249f5e88 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 03:33:12 -0500 Subject: [PATCH 11/21] Make M_Responder respond to joy buttons only in-menu (multiplayer bug?) --- src/m_menu.c | 72 ++++++++++++++++++++++++++-------------------------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/src/m_menu.c b/src/m_menu.c index bec3529d..d67f463c 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -2079,44 +2079,44 @@ boolean M_Responder(event_t *ev) // (but still allow shift keyup so caps doesn't get stuck) return false; } - else if (ev->type == ev_keydown) - { - ch = ev->data1; - - // added 5-2-98 remap virtual keys (mouse & joystick buttons) - switch (ch) - { - case KEY_MOUSE1: - case KEY_JOY1: - ch = KEY_ENTER; - break; - case KEY_JOY1 + 3: - ch = 'n'; - break; - case KEY_MOUSE1 + 1: - case KEY_JOY1 + 1: - ch = KEY_ESCAPE; - break; - case KEY_JOY1 + 2: - ch = KEY_BACKSPACE; - break; - case KEY_HAT1: - ch = KEY_UPARROW; - break; - case KEY_HAT1 + 1: - ch = KEY_DOWNARROW; - break; - case KEY_HAT1 + 2: - ch = KEY_LEFTARROW; - break; - case KEY_HAT1 + 3: - ch = KEY_RIGHTARROW; - break; - } - } else if (menuactive) { - if (ev->type == ev_joystick && ev->data1 == 0 && joywait < I_GetTime()) + if (ev->type == ev_keydown) + { + ch = ev->data1; + + // added 5-2-98 remap virtual keys (mouse & joystick buttons) + switch (ch) + { + case KEY_MOUSE1: + case KEY_JOY1: + ch = KEY_ENTER; + break; + case KEY_JOY1 + 3: + ch = 'n'; + break; + case KEY_MOUSE1 + 1: + case KEY_JOY1 + 1: + ch = KEY_ESCAPE; + break; + case KEY_JOY1 + 2: + ch = KEY_BACKSPACE; + break; + case KEY_HAT1: + ch = KEY_UPARROW; + break; + case KEY_HAT1 + 1: + ch = KEY_DOWNARROW; + break; + case KEY_HAT1 + 2: + ch = KEY_LEFTARROW; + break; + case KEY_HAT1 + 3: + ch = KEY_RIGHTARROW; + break; + } + } + else if (ev->type == ev_joystick && ev->data1 == 0 && joywait < I_GetTime()) { if (ev->data3 == -1) { From 3134d72c121e4477d3168edf32e585e3fa4b028c Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 03:36:04 -0500 Subject: [PATCH 12/21] Preserve event ch for other responders --- src/m_menu.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/m_menu.c b/src/m_menu.c index d67f463c..557ecdf7 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -2171,6 +2171,8 @@ boolean M_Responder(event_t *ev) } } } + else if (ev->type == ev_keydown) // Preserve event for other responders + ch = ev->data1; if (ch == -1) return false; From 59cabea8bdeef32c8902efc0db384c8b477b8939 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 04:16:20 -0500 Subject: [PATCH 13/21] Add joyaiming qualifier for joystick look up/down --- src/g_game.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/g_game.c b/src/g_game.c index 3e160dfe..919ec3f7 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -960,7 +960,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics) INT32 tspeed, forward, side, axis, i; const INT32 speed = 1; // these ones used for multiple conditions - boolean turnleft, turnright, mouseaiming, analogjoystickmove, gamepadjoystickmove; + boolean turnleft, turnright, mouseaiming, joyaiming, analogjoystickmove, gamepadjoystickmove; player_t *player = &players[consoleplayer]; camera_t *thiscam = &camera; @@ -1161,11 +1161,11 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics) } axis = JoyAxis(AXISLOOK); - if (analogjoystickmove && axis != 0 && cv_lookaxis.value != 0) + if (analogjoystickmove && joyaiming && axis != 0 && cv_lookaxis.value != 0) localaiming += (axis<<16) * screen_invert; // spring back if not using keyboard neither mouselookin' - if (!keyboard_look && cv_lookaxis.value == 0 && !mouseaiming) + if (!keyboard_look && cv_lookaxis.value == 0 && !joyaiming && !mouseaiming) localaiming = 0; if (PLAYER1INPUTDOWN(gc_lookup) || (gamepadjoystickmove && axis < 0)) @@ -1252,7 +1252,7 @@ void G_BuildTiccmd2(ticcmd_t *cmd, INT32 realtics) INT32 tspeed, forward, side, axis, i; const INT32 speed = 1; // these ones used for multiple conditions - boolean turnleft, turnright, mouseaiming, analogjoystickmove, gamepadjoystickmove; + boolean turnleft, turnright, mouseaiming, joyaiming, analogjoystickmove, gamepadjoystickmove; player_t *player = &players[secondarydisplayplayer]; camera_t *thiscam = (player->bot == 2 ? &camera : &camera2); @@ -1450,11 +1450,11 @@ void G_BuildTiccmd2(ticcmd_t *cmd, INT32 realtics) } axis = Joy2Axis(AXISLOOK); - if (analogjoystickmove && axis != 0 && cv_lookaxis2.value != 0) + if (analogjoystickmove && joyaiming && axis != 0 && cv_lookaxis2.value != 0) localaiming2 += (axis<<16) * screen_invert; // spring back if not using keyboard neither mouselookin' - if (!keyboard_look && cv_lookaxis2.value == 0 && !mouseaiming) + if (!keyboard_look && cv_lookaxis2.value == 0 && !joyaiming && !mouseaiming) localaiming2 = 0; if (PLAYER2INPUTDOWN(gc_lookup) || (gamepadjoystickmove && axis < 0)) From 0bb113130bf9dc1e40b7851fce2d47b7d387b84b Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 04:21:19 -0500 Subject: [PATCH 14/21] Add alwaysfreelook to joystick menu --- src/m_menu.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/m_menu.c b/src/m_menu.c index 557ecdf7..83882327 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -1085,6 +1085,11 @@ static menuitem_t OP_Joystick1Menu[] = {IT_STRING | IT_CVAR, NULL, "Axis For Looking" , &cv_lookaxis , 60}, {IT_STRING | IT_CVAR, NULL, "Axis For Firing" , &cv_fireaxis , 70}, {IT_STRING | IT_CVAR, NULL, "Axis For NFiring" , &cv_firenaxis , 80}, + + // todo joystick-juggling next + // {IT_STRING | IT_CVAR, NULL, "First-Person Vert-Look", &cv_alwaysfreelook, 100}, + // {IT_STRING | IT_CVAR, NULL, "Third-Person Vert-Look", &cv_chasefreelook, 110}, + {IT_STRING | IT_CVAR, NULL, "Always Look Up/Down", &cv_alwaysfreelook, 100}, }; static menuitem_t OP_Joystick2Menu[] = @@ -1096,6 +1101,11 @@ static menuitem_t OP_Joystick2Menu[] = {IT_STRING | IT_CVAR, NULL, "Axis For Looking" , &cv_lookaxis2 , 60}, {IT_STRING | IT_CVAR, NULL, "Axis For Firing" , &cv_fireaxis2 , 70}, {IT_STRING | IT_CVAR, NULL, "Axis For NFiring" , &cv_firenaxis2 , 80}, + + // todo joystick-juggling next + // {IT_STRING | IT_CVAR, NULL, "First-Person Vert-Look", &cv_alwaysfreelook2, 100}, + // {IT_STRING | IT_CVAR, NULL, "Third-Person Vert-Look", &cv_chasefreelook2, 110}, + {IT_STRING | IT_CVAR, NULL, "Always Look Up/Down", &cv_alwaysfreelook2, 100}, }; static menuitem_t OP_JoystickSetMenu[] = From 7e523a1e350ace2394a00eedf2924b7df6b7191a Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 06:32:26 -0500 Subject: [PATCH 15/21] Reset vertical look when toggling joyaiming --- src/g_game.c | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/src/g_game.c b/src/g_game.c index 919ec3f7..29387d23 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -960,13 +960,14 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics) INT32 tspeed, forward, side, axis, i; const INT32 speed = 1; // these ones used for multiple conditions - boolean turnleft, turnright, mouseaiming, joyaiming, analogjoystickmove, gamepadjoystickmove; + boolean turnleft, turnright, mouseaiming, analogjoystickmove, gamepadjoystickmove, thisjoyaiming; player_t *player = &players[consoleplayer]; camera_t *thiscam = &camera; static INT32 turnheld; // for accelerative turning static boolean keyboard_look; // true if lookup/down using keyboard static boolean resetdown; // don't cam reset every frame + static boolean joyaiming; // check the last frame's value if we need to reset the camera G_CopyTiccmd(cmd, I_BaseTiccmd(), 1); // empty, or external driver @@ -986,6 +987,15 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics) analogjoystickmove = cv_usejoystick.value && !Joystick.bGamepadStyle; gamepadjoystickmove = cv_usejoystick.value && Joystick.bGamepadStyle; + // todo joystick-juggling next + //thisjoyaiming = (cv_chasecam.value) ? cv_chasefreelook.value : cv_alwaysfreelook.value; + thisjoyaiming = cv_alwaysfreelook.value; + + // Reset the vertical look if we're no longer joyaiming + if (!thisjoyaiming && joyaiming) + localaiming = 0; + joyaiming = thisjoyaiming; + axis = JoyAxis(AXISTURN); if (gamepadjoystickmove && axis != 0) { @@ -1252,13 +1262,14 @@ void G_BuildTiccmd2(ticcmd_t *cmd, INT32 realtics) INT32 tspeed, forward, side, axis, i; const INT32 speed = 1; // these ones used for multiple conditions - boolean turnleft, turnright, mouseaiming, joyaiming, analogjoystickmove, gamepadjoystickmove; + boolean turnleft, turnright, mouseaiming, analogjoystickmove, gamepadjoystickmove, thisjoyaiming; player_t *player = &players[secondarydisplayplayer]; camera_t *thiscam = (player->bot == 2 ? &camera : &camera2); static INT32 turnheld; // for accelerative turning static boolean keyboard_look; // true if lookup/down using keyboard static boolean resetdown; // don't cam reset every frame + static boolean joyaiming; // check the last frame's value if we need to reset the camera G_CopyTiccmd(cmd, I_BaseTiccmd2(), 1); // empty, or external driver @@ -1278,6 +1289,15 @@ void G_BuildTiccmd2(ticcmd_t *cmd, INT32 realtics) analogjoystickmove = cv_usejoystick2.value && !Joystick2.bGamepadStyle; gamepadjoystickmove = cv_usejoystick2.value && Joystick2.bGamepadStyle; + // todo joystick-juggling next + //thisjoyaiming = (cv_chasecam.value) ? cv_chasefreelook2.value : cv_alwaysfreelook2.value; + thisjoyaiming = cv_alwaysfreelook2.value; + + // Reset the vertical look if we're no longer joyaiming + if (!thisjoyaiming && joyaiming) + localaiming2 = 0; + joyaiming = thisjoyaiming; + axis = Joy2Axis(AXISTURN); if (gamepadjoystickmove && axis != 0) { From 9de31cf2e7ac38d5245419c7618a39c8cff0bc7e Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 06:59:31 -0500 Subject: [PATCH 16/21] Make pause key bring up the menu if it's a joy button * Add "Pause" entry to multiplayer control panel to give joy users a way to pause in netgames --- src/m_menu.c | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/src/m_menu.c b/src/m_menu.c index 83882327..7a06053f 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -223,6 +223,7 @@ static void M_SelectableClearMenus(INT32 choice); static void M_Retry(INT32 choice); static void M_EndGame(INT32 choice); static void M_MapChange(INT32 choice); +static void M_Pause(INT32 choice); static void M_ChangeLevel(INT32 choice); static void M_ConfirmSpectate(INT32 choice); static void M_ConfirmEnterGame(INT32 choice); @@ -478,6 +479,8 @@ typedef enum // --------------------- static menuitem_t MPauseMenu[] = { + {IT_STRING | IT_CALL, NULL, "Pause", M_Pause, 0}, + {IT_STRING | IT_SUBMENU, NULL, "Scramble Teams...", &MISC_ScrambleTeamDef, 16}, {IT_STRING | IT_CALL, NULL, "Switch Map..." , M_MapChange, 24}, @@ -497,7 +500,8 @@ static menuitem_t MPauseMenu[] = typedef enum { - mpause_scramble = 0, + mpause_pause = 0, + mpause_scramble, mpause_switchmap, mpause_continue, @@ -2095,6 +2099,11 @@ boolean M_Responder(event_t *ev) { ch = ev->data1; + // Pause by joystick means you bring up the menu + if (ch >= KEY_JOY1 && ch < KEY_JOY1 + JOYBUTTONS + JOYHATS*4 && + (ch == gamecontrol[gc_pause][0] || ch == gamecontrol[gc_pause][1])) + ch = KEY_ESCAPE; + // added 5-2-98 remap virtual keys (mouse & joystick buttons) switch (ch) { @@ -2190,6 +2199,11 @@ boolean M_Responder(event_t *ev) // F-Keys if (!menuactive) { + // Pause by joystick means you bring up the menu + if (ch >= KEY_JOY1 && ch < KEY_JOY1 + JOYBUTTONS + JOYHATS*4 && + (ch == gamecontrol[gc_pause][0] || ch == gamecontrol[gc_pause][1])) + ch = KEY_ESCAPE; + noFurtherInput = true; switch (ch) { @@ -2577,6 +2591,7 @@ void M_StartControlPanel(void) } else // multiplayer { + MPauseMenu[mpause_pause].status = IT_DISABLED; MPauseMenu[mpause_switchmap].status = IT_DISABLED; MPauseMenu[mpause_scramble].status = IT_DISABLED; MPauseMenu[mpause_psetupsplit].status = IT_DISABLED; @@ -2589,8 +2604,15 @@ void M_StartControlPanel(void) if ((server || adminplayer == consoleplayer)) { MPauseMenu[mpause_switchmap].status = IT_STRING | IT_CALL; + if (!splitscreen) + MPauseMenu[mpause_pause].status = IT_STRING | IT_CALL; // server admin only if (G_GametypeHasTeams()) + { MPauseMenu[mpause_scramble].status = IT_STRING | IT_SUBMENU; + MPauseMenu[mpause_pause].alphaKey = MPauseMenu[mpause_scramble].alphaKey - 16; // adjust y + } + else + MPauseMenu[mpause_pause].alphaKey = MPauseMenu[mpause_switchmap].alphaKey - 16; // adjust y } if (splitscreen) @@ -6250,6 +6272,13 @@ static void M_MapChange(INT32 choice) M_SetupNextMenu(&MISC_ChangeLevelDef); } +static void M_Pause(INT32 choice) +{ + (void)choice; + + COM_ImmedExecute("pause"); +} + static void M_StartSplitServerMenu(INT32 choice) { (void)choice; From ed57d0d9f9cc14f9407cd9539741e718fe22f10a Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 12:51:18 -0500 Subject: [PATCH 17/21] Add Joy2 for network abort --- src/d_clisrv.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/d_clisrv.c b/src/d_clisrv.c index 9cf1699b..d6670043 100644 --- a/src/d_clisrv.c +++ b/src/d_clisrv.c @@ -25,6 +25,7 @@ #include "g_game.h" #include "hu_stuff.h" #include "keys.h" +#include "g_input.h" // JOY1 #include "m_menu.h" #include "console.h" #include "d_netfil.h" @@ -1959,7 +1960,7 @@ static boolean CL_ServerConnectionTicker(boolean viams, const char *tmpsave, tic I_OsPolling(); key = I_GetKey(); - if (key == KEY_ESCAPE) + if (key == KEY_ESCAPE || key == KEY_JOY1+1) { CONS_Printf(M_GetText("Network game synchronization aborted.\n")); // M_StartMessage(M_GetText("Network game synchronization aborted.\n\nPress ESC\n"), NULL, MM_NOTHING); From 6730c6c7653a33068d04724803af53055092c629 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 13:00:20 -0500 Subject: [PATCH 18/21] Menu for joy first/third person vertical look --- src/m_menu.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/m_menu.c b/src/m_menu.c index 7a06053f..3799ec03 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -1090,10 +1090,8 @@ static menuitem_t OP_Joystick1Menu[] = {IT_STRING | IT_CVAR, NULL, "Axis For Firing" , &cv_fireaxis , 70}, {IT_STRING | IT_CVAR, NULL, "Axis For NFiring" , &cv_firenaxis , 80}, - // todo joystick-juggling next - // {IT_STRING | IT_CVAR, NULL, "First-Person Vert-Look", &cv_alwaysfreelook, 100}, - // {IT_STRING | IT_CVAR, NULL, "Third-Person Vert-Look", &cv_chasefreelook, 110}, - {IT_STRING | IT_CVAR, NULL, "Always Look Up/Down", &cv_alwaysfreelook, 100}, + {IT_STRING | IT_CVAR, NULL, "First-Person Vert-Look", &cv_alwaysfreelook, 100}, + {IT_STRING | IT_CVAR, NULL, "Third-Person Vert-Look", &cv_chasefreelook, 110}, }; static menuitem_t OP_Joystick2Menu[] = @@ -1106,10 +1104,8 @@ static menuitem_t OP_Joystick2Menu[] = {IT_STRING | IT_CVAR, NULL, "Axis For Firing" , &cv_fireaxis2 , 70}, {IT_STRING | IT_CVAR, NULL, "Axis For NFiring" , &cv_firenaxis2 , 80}, - // todo joystick-juggling next - // {IT_STRING | IT_CVAR, NULL, "First-Person Vert-Look", &cv_alwaysfreelook2, 100}, - // {IT_STRING | IT_CVAR, NULL, "Third-Person Vert-Look", &cv_chasefreelook2, 110}, - {IT_STRING | IT_CVAR, NULL, "Always Look Up/Down", &cv_alwaysfreelook2, 100}, + {IT_STRING | IT_CVAR, NULL, "First-Person Vert-Look", &cv_alwaysfreelook2, 100}, + {IT_STRING | IT_CVAR, NULL, "Third-Person Vert-Look", &cv_chasefreelook2, 110}, }; static menuitem_t OP_JoystickSetMenu[] = From 7ce092128b121112ffda4598d15073a2afab257b Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 13:11:48 -0500 Subject: [PATCH 19/21] Revert "Make pause key bring up the menu if it's a joy button" This reverts commit 9de31cf2e7ac38d5245419c7618a39c8cff0bc7e. --- src/m_menu.c | 31 +------------------------------ 1 file changed, 1 insertion(+), 30 deletions(-) diff --git a/src/m_menu.c b/src/m_menu.c index 3799ec03..2c7be308 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -223,7 +223,6 @@ static void M_SelectableClearMenus(INT32 choice); static void M_Retry(INT32 choice); static void M_EndGame(INT32 choice); static void M_MapChange(INT32 choice); -static void M_Pause(INT32 choice); static void M_ChangeLevel(INT32 choice); static void M_ConfirmSpectate(INT32 choice); static void M_ConfirmEnterGame(INT32 choice); @@ -479,8 +478,6 @@ typedef enum // --------------------- static menuitem_t MPauseMenu[] = { - {IT_STRING | IT_CALL, NULL, "Pause", M_Pause, 0}, - {IT_STRING | IT_SUBMENU, NULL, "Scramble Teams...", &MISC_ScrambleTeamDef, 16}, {IT_STRING | IT_CALL, NULL, "Switch Map..." , M_MapChange, 24}, @@ -500,8 +497,7 @@ static menuitem_t MPauseMenu[] = typedef enum { - mpause_pause = 0, - mpause_scramble, + mpause_scramble = 0, mpause_switchmap, mpause_continue, @@ -2095,11 +2091,6 @@ boolean M_Responder(event_t *ev) { ch = ev->data1; - // Pause by joystick means you bring up the menu - if (ch >= KEY_JOY1 && ch < KEY_JOY1 + JOYBUTTONS + JOYHATS*4 && - (ch == gamecontrol[gc_pause][0] || ch == gamecontrol[gc_pause][1])) - ch = KEY_ESCAPE; - // added 5-2-98 remap virtual keys (mouse & joystick buttons) switch (ch) { @@ -2195,11 +2186,6 @@ boolean M_Responder(event_t *ev) // F-Keys if (!menuactive) { - // Pause by joystick means you bring up the menu - if (ch >= KEY_JOY1 && ch < KEY_JOY1 + JOYBUTTONS + JOYHATS*4 && - (ch == gamecontrol[gc_pause][0] || ch == gamecontrol[gc_pause][1])) - ch = KEY_ESCAPE; - noFurtherInput = true; switch (ch) { @@ -2587,7 +2573,6 @@ void M_StartControlPanel(void) } else // multiplayer { - MPauseMenu[mpause_pause].status = IT_DISABLED; MPauseMenu[mpause_switchmap].status = IT_DISABLED; MPauseMenu[mpause_scramble].status = IT_DISABLED; MPauseMenu[mpause_psetupsplit].status = IT_DISABLED; @@ -2600,15 +2585,8 @@ void M_StartControlPanel(void) if ((server || adminplayer == consoleplayer)) { MPauseMenu[mpause_switchmap].status = IT_STRING | IT_CALL; - if (!splitscreen) - MPauseMenu[mpause_pause].status = IT_STRING | IT_CALL; // server admin only if (G_GametypeHasTeams()) - { MPauseMenu[mpause_scramble].status = IT_STRING | IT_SUBMENU; - MPauseMenu[mpause_pause].alphaKey = MPauseMenu[mpause_scramble].alphaKey - 16; // adjust y - } - else - MPauseMenu[mpause_pause].alphaKey = MPauseMenu[mpause_switchmap].alphaKey - 16; // adjust y } if (splitscreen) @@ -6268,13 +6246,6 @@ static void M_MapChange(INT32 choice) M_SetupNextMenu(&MISC_ChangeLevelDef); } -static void M_Pause(INT32 choice) -{ - (void)choice; - - COM_ImmedExecute("pause"); -} - static void M_StartSplitServerMenu(INT32 choice) { (void)choice; From 205e52f6d493b4e226ed1e491356704494e7a4c9 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 13:13:01 -0500 Subject: [PATCH 20/21] thisjoyaiming fix for chasefreelook --- src/g_game.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/g_game.c b/src/g_game.c index 29387d23..423fd3e9 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -987,9 +987,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics) analogjoystickmove = cv_usejoystick.value && !Joystick.bGamepadStyle; gamepadjoystickmove = cv_usejoystick.value && Joystick.bGamepadStyle; - // todo joystick-juggling next - //thisjoyaiming = (cv_chasecam.value) ? cv_chasefreelook.value : cv_alwaysfreelook.value; - thisjoyaiming = cv_alwaysfreelook.value; + thisjoyaiming = (cv_chasecam.value) ? cv_chasefreelook.value : cv_alwaysfreelook.value; // Reset the vertical look if we're no longer joyaiming if (!thisjoyaiming && joyaiming) @@ -1289,9 +1287,7 @@ void G_BuildTiccmd2(ticcmd_t *cmd, INT32 realtics) analogjoystickmove = cv_usejoystick2.value && !Joystick2.bGamepadStyle; gamepadjoystickmove = cv_usejoystick2.value && Joystick2.bGamepadStyle; - // todo joystick-juggling next - //thisjoyaiming = (cv_chasecam.value) ? cv_chasefreelook2.value : cv_alwaysfreelook2.value; - thisjoyaiming = cv_alwaysfreelook2.value; + thisjoyaiming = (cv_chasecam2.value) ? cv_chasefreelook2.value : cv_alwaysfreelook2.value; // Reset the vertical look if we're no longer joyaiming if (!thisjoyaiming && joyaiming) From 6ca1130551ab765abaf9566998cc5963e4a24023 Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 13:21:16 -0500 Subject: [PATCH 21/21] Hardcode Screenshot, GIF, and Viewpoint to their F keys --- src/g_game.c | 2 +- src/m_misc.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/g_game.c b/src/g_game.c index f313b4d5..1c6059f6 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -1678,7 +1678,7 @@ boolean G_Responder(event_t *ev) { // allow spy mode changes even during the demo if (gamestate == GS_LEVEL && ev->type == ev_keydown - && (ev->data1 == gamecontrol[gc_viewpoint][0] || ev->data1 == gamecontrol[gc_viewpoint][1])) + && (ev->data1 == KEY_F12 || ev->data1 == gamecontrol[gc_viewpoint][0] || ev->data1 == gamecontrol[gc_viewpoint][1])) { if (splitscreen || !netgame) displayplayer = consoleplayer; diff --git a/src/m_misc.c b/src/m_misc.c index 223a652d..f8014104 100644 --- a/src/m_misc.c +++ b/src/m_misc.c @@ -1494,9 +1494,9 @@ boolean M_ScreenshotResponder(event_t *ev) return false; ch = ev->data1; - if (ch == gamecontrol[gc_screenshot][0] || ch == gamecontrol[gc_screenshot][1]) // remappable F8 + if (ch == KEY_F8 || ch == gamecontrol[gc_screenshot][0] || ch == gamecontrol[gc_screenshot][1]) // remappable F8 M_ScreenShot(); - else if (ch == gamecontrol[gc_recordgif][0] || ch == gamecontrol[gc_recordgif][1]) // remappable F9 + else if (ch == KEY_F9 || ch == gamecontrol[gc_recordgif][0] || ch == gamecontrol[gc_recordgif][1]) // remappable F9 ((moviemode) ? M_StopMovie : M_StartMovie)(); else return false;