commit 7bd029058c7be03cff6a151925c1c424a4651d8b
Author: Michael Day <contact@michaelcday.com>
AuthorDate: Thu Nov 2 22:21:47 2023 -0400
Commit: Michael Day <contact@michaelcday.com>
CommitDate: Thu Nov 2 22:21:47 2023 -0400
joystick: sensitivity = 0 disables input
When *not* using analog controls, let a move, turn or look sensitivity
value of 0 disable that input. Restore Strife look sensitivity in setup.
---
src/doom/g_game.c | 8 ++++----
src/heretic/g_game.c | 10 +++++-----
src/hexen/g_game.c | 10 +++++-----
src/setup/joystick.c | 2 +-
src/strife/g_game.c | 12 ++++++------
5 files changed, 21 insertions(+), 21 deletions(-)
diff --git a/src/doom/g_game.c b/src/doom/g_game.c
index b07ff570..3b881388 100644
--- a/src/doom/g_game.c
+++ b/src/doom/g_game.c
@@ -388,7 +388,7 @@ void G_BuildTiccmd (ticcmd_t* cmd, int maketic)
joyxmove = (joyxmove < -FRACUNIT) ? -FRACUNIT : joyxmove;
side += FixedMul(sidemove[speed], joyxmove);
}
- else
+ else if (joystick_move_sensitivity)
{
if (joyxmove > 0)
side += sidemove[speed];
@@ -410,7 +410,7 @@ void G_BuildTiccmd (ticcmd_t* cmd, int maketic)
joyxmove = joyxmove * joystick_turn_sensitivity / 10;
cmd->angleturn -= FixedMul(angleturn[1], joyxmove);
}
- else
+ else if (joystick_turn_sensitivity)
{
if (joyxmove > 0)
cmd->angleturn -= angleturn[tspeed];
@@ -437,7 +437,7 @@ void G_BuildTiccmd (ticcmd_t* cmd, int maketic)
joyymove = (joyymove < -FRACUNIT) ? -FRACUNIT : joyymove;
forward -= FixedMul(forwardmove[speed], joyymove);
}
- else
+ else if (joystick_move_sensitivity)
{
if (joyymove < 0)
forward += forwardmove[speed];
@@ -466,7 +466,7 @@ void G_BuildTiccmd (ticcmd_t* cmd, int maketic)
joystrafemove = (joystrafemove < -FRACUNIT) ? -FRACUNIT : joystrafemove;
side += FixedMul(sidemove[speed], joystrafemove);
}
- else
+ else if (joystick_move_sensitivity)
{
if (joystrafemove < 0)
side -= sidemove[speed];
diff --git a/src/heretic/g_game.c b/src/heretic/g_game.c
index 666384da..8f060923 100644
--- a/src/heretic/g_game.c
+++ b/src/heretic/g_game.c
@@ -359,7 +359,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, int maketic)
joyxmove = (joyxmove < -FRACUNIT) ? -FRACUNIT : joyxmove;
side += FixedMul(sidemove[speed], joyxmove);
}
- else
+ else if (joystick_move_sensitivity)
{
if (joyxmove > 0)
side += sidemove[speed];
@@ -381,7 +381,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, int maketic)
joyxmove = joyxmove * joystick_turn_sensitivity / 10;
cmd->angleturn -= FixedMul(angleturn[1], joyxmove);
}
- else
+ else if (joystick_turn_sensitivity)
{
if (joyxmove > 0)
cmd->angleturn -= angleturn[tspeed];
@@ -401,7 +401,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, int maketic)
joyymove = (joyymove < -FRACUNIT) ? FRACUNIT : joyymove;
forward -= FixedMul(forwardmove[speed], joyymove);
}
- else
+ else if (joystick_move_sensitivity)
{
if (joyymove < 0)
forward += forwardmove[speed];
@@ -422,7 +422,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, int maketic)
joystrafemove = (joystrafemove < -FRACUNIT) ? -FRACUNIT : joystrafemove;
side += FixedMul(sidemove[speed], joystrafemove);
}
- else
+ else if (joystick_move_sensitivity)
{
if (joystrafemove < 0)
side -= sidemove[speed];
@@ -445,7 +445,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, int maketic)
joylook = (joylook < -FRACUNIT) ? -FRACUNIT : joylook;
look = -FixedMul(2, joylook);
}
- else
+ else if (joystick_look_sensitivity)
{
if (joylook < 0)
{
diff --git a/src/hexen/g_game.c b/src/hexen/g_game.c
index 972178b9..e0b30d15 100644
--- a/src/hexen/g_game.c
+++ b/src/hexen/g_game.c
@@ -280,7 +280,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, int maketic)
joyxmove = (joyxmove < -FRACUNIT) ? -FRACUNIT : joyxmove;
side += FixedMul(sidemove[pClass][speed], joyxmove);
}
- else
+ else if (joystick_move_sensitivity)
{
if (joyxmove > 0)
{
@@ -306,7 +306,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, int maketic)
joyxmove = joyxmove * joystick_turn_sensitivity / 10;
cmd->angleturn -= FixedMul(angleturn[1], joyxmove);
}
- else
+ else if (joystick_turn_sensitivity)
{
if (joyxmove > 0)
cmd->angleturn -= angleturn[tspeed];
@@ -330,7 +330,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, int maketic)
joyymove = (joyymove < -FRACUNIT) ? FRACUNIT : joyymove;
forward -= FixedMul(forwardmove[pClass][speed], joyymove);
}
- else
+ else if (joystick_move_sensitivity)
{
if (joyymove < 0)
{
@@ -359,7 +359,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, int maketic)
joystrafemove = (joystrafemove < -FRACUNIT) ? -FRACUNIT : joystrafemove;
side += FixedMul(sidemove[pClass][speed], joystrafemove);
}
- else
+ else if (joystick_move_sensitivity)
{
if (joystrafemove < 0)
side -= sidemove[pClass][speed];
@@ -383,7 +383,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, int maketic)
joylook = (joylook < -FRACUNIT) ? -FRACUNIT : joylook;
look = -FixedMul(2, joylook);
}
- else
+ else if (joystick_look_sensitivity)
{
if (joylook < 0)
{
diff --git a/src/setup/joystick.c b/src/setup/joystick.c
index a9ae5920..e0cf9e88 100644
--- a/src/setup/joystick.c
+++ b/src/setup/joystick.c
@@ -1154,7 +1154,7 @@ static void AdjustAnalog(TXT_UNCAST_ARG(widget), TXT_UNCAST_ARG(unused))
TXT_NewLabel("Turn"),
TXT_NewSpinControl(&joystick_turn_sensitivity, 0, 20),
NULL);
- if (gamemission == heretic || gamemission == hexen)
+ if (gamemission == heretic || gamemission == hexen || gamemission == strife)
{
TXT_AddWidgets(window,
TXT_NewLabel("Look"),
diff --git a/src/strife/g_game.c b/src/strife/g_game.c
index 0eaf08e8..813f0d74 100644
--- a/src/strife/g_game.c
+++ b/src/strife/g_game.c
@@ -345,11 +345,11 @@ void G_BuildTiccmd (ticcmd_t* cmd, int maketic)
consistancy[consoleplayer][maketic%BACKUPTICS];
// villsa [STRIFE] look up key
- if(gamekeydown[key_lookup] || joylook < 0)
+ if(gamekeydown[key_lookup] || (joylook < 0 && joystick_look_sensitivity))
cmd->buttons2 |= BT2_LOOKUP;
// villsa [STRIFE] look down key
- if(gamekeydown[key_lookdown] || joylook > 0)
+ if(gamekeydown[key_lookdown] || (joylook > 0 && joystick_look_sensitivity))
cmd->buttons2 |= BT2_LOOKDOWN;
// villsa [STRIFE] inventory use key
@@ -439,7 +439,7 @@ void G_BuildTiccmd (ticcmd_t* cmd, int maketic)
joyxmove = (joyxmove < -FRACUNIT) ? -FRACUNIT : joyxmove;
side += FixedMul(sidemove[speed], joyxmove);
}
- else
+ else if (joystick_move_sensitivity)
{
if (joyxmove > 0)
side += sidemove[speed];
@@ -462,7 +462,7 @@ void G_BuildTiccmd (ticcmd_t* cmd, int maketic)
joyxmove = joyxmove * joystick_turn_sensitivity / 10;
cmd->angleturn -= FixedMul(angleturn[1], joyxmove);
}
- else
+ else if (joystick_turn_sensitivity)
{
if (joyxmove > 0)
cmd->angleturn -= angleturn[tspeed];
@@ -489,7 +489,7 @@ void G_BuildTiccmd (ticcmd_t* cmd, int maketic)
joyymove = (joyymove < -FRACUNIT) ? FRACUNIT : joyymove;
forward -= FixedMul(forwardmove[speed], joyymove);
}
- else
+ else if (joystick_move_sensitivity)
{
if (joyymove < 0)
forward += forwardmove[speed];
@@ -518,7 +518,7 @@ void G_BuildTiccmd (ticcmd_t* cmd, int maketic)
joystrafemove = (joystrafemove < -FRACUNIT) ? -FRACUNIT : joystrafemove;
side += FixedMul(sidemove[speed], joystrafemove);
}
- else
+ else if (joystick_move_sensitivity)
{
if (joystrafemove < 0)
side -= sidemove[speed];