From 78dde93f3ed448fa8142bad710fd662846089dda Mon Sep 17 00:00:00 2001 From: mazmazz Date: Mon, 3 Dec 2018 03:16:55 -0500 Subject: [PATCH 01/12] 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 636e804fe..bec3529da 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 02/12] 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 b1a3720e6..3e160dfe0 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 03/12] 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 bec3529da..d67f463c6 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 04/12] 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 d67f463c6..557ecdf74 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 05/12] 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 3e160dfe0..919ec3f71 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 06/12] 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 557ecdf74..838823278 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 07/12] 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 919ec3f71..29387d23f 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 08/12] 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 838823278..7a06053f2 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 09/12] 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 9cf1699bf..d66700435 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 10/12] 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 7a06053f2..3799ec03c 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 11/12] 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 3799ec03c..2c7be308a 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 12/12] 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 29387d23f..423fd3e9a 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)