From 24ce45a3c5779ec57a3ec30cb0c6bd7b50328d6b Mon Sep 17 00:00:00 2001 From: Petr Bartos Date: Tue, 29 Mar 2022 22:46:31 +0200 Subject: [PATCH] Add support for setting control schema in team arena --- android/app/src/main/assets/pakQ3Q.pk3 | Bin 322046 -> 322259 bytes android/app/src/main/cpp/code/ui/ui_main.c | 69 +++++++++++++++++ android/app/src/main/pakQ3Q/ui/controls3.menu | 52 ++++++++++--- .../src/main/pakQ3Q/ui/ingame_controls.menu | 70 +++++++++++++----- 4 files changed, 163 insertions(+), 28 deletions(-) diff --git a/android/app/src/main/assets/pakQ3Q.pk3 b/android/app/src/main/assets/pakQ3Q.pk3 index 14b632f26950647bb40c37a6db0745a2edba4158..f6e5f10be137d27f97821c1cb8f8207edf3bc57d 100644 GIT binary patch delta 2526 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 diff --git a/android/app/src/main/cpp/code/ui/ui_main.c b/android/app/src/main/cpp/code/ui/ui_main.c index 5a304156..88d3677c 100644 --- a/android/app/src/main/cpp/code/ui/ui_main.c +++ b/android/app/src/main/cpp/code/ui/ui_main.c @@ -3161,6 +3161,75 @@ static void UI_Update(const char *name) { } else { trap_Cvar_SetValue( "m_pitch", -0.022f ); } + } else if (Q_stricmp(name, "vr_controlSchema") == 0) { + qboolean uturn = trap_Cvar_VariableValue( "vr_uturn" ) != 0; + switch (val) + { + case 0: // Default schema + trap_Cvar_Set("vr_button_map_RTHUMBLEFT", "turnleft"); // turn left + trap_Cvar_Set("vr_button_map_RTHUMBRIGHT", "turnright"); // turn right + trap_Cvar_Set("vr_button_map_RTHUMBFORWARD", "weapnext"); // next weapon + if (uturn) { + trap_Cvar_Set("vr_button_map_RTHUMBBACK", "uturn"); // u-turn + } else { + trap_Cvar_Set("vr_button_map_RTHUMBBACK", "weapprev"); // previous weapon + } + trap_Cvar_Set("vr_button_map_PRIMARYGRIP", "+weapon_select"); // weapon selector + trap_Cvar_Set("vr_button_map_PRIMARYTHUMBSTICK", ""); // unmapped + trap_Cvar_Set("vr_button_map_RTHUMBFORWARD_ALT", ""); // unmapped + trap_Cvar_Set("vr_button_map_RTHUMBFORWARDRIGHT", ""); // unmapped + trap_Cvar_Set("vr_button_map_RTHUMBFORWARDRIGHT_ALT", ""); // unmapped + trap_Cvar_Set("vr_button_map_RTHUMBRIGHT_ALT", ""); // unmapped + trap_Cvar_Set("vr_button_map_RTHUMBBACKRIGHT", ""); // unmapped + trap_Cvar_Set("vr_button_map_RTHUMBBACKRIGHT_ALT", ""); // unmapped + trap_Cvar_Set("vr_button_map_RTHUMBBACK_ALT", ""); // unmapped + trap_Cvar_Set("vr_button_map_RTHUMBBACKLEFT", ""); // unmapped + trap_Cvar_Set("vr_button_map_RTHUMBBACKLEFT_ALT", ""); // unmapped + trap_Cvar_Set("vr_button_map_RTHUMBLEFT_ALT", ""); // unmapped + trap_Cvar_Set("vr_button_map_RTHUMBFORWARDLEFT", ""); // unmapped + trap_Cvar_Set("vr_button_map_RTHUMBFORWARDLEFT_ALT", ""); // unmapped + break; + default: // Now we have only two schemas + // All directions as weapon select (useful for HMD wheel) + trap_Cvar_Set("vr_button_map_RTHUMBFORWARD", "+weapon_select"); + trap_Cvar_Set("vr_button_map_RTHUMBFORWARDRIGHT", "+weapon_select"); + trap_Cvar_Set("vr_button_map_RTHUMBRIGHT", "+weapon_select"); + trap_Cvar_Set("vr_button_map_RTHUMBBACKRIGHT", "+weapon_select"); + trap_Cvar_Set("vr_button_map_RTHUMBBACK", "+weapon_select"); + trap_Cvar_Set("vr_button_map_RTHUMBBACKLEFT", "+weapon_select"); + trap_Cvar_Set("vr_button_map_RTHUMBLEFT", "+weapon_select"); + trap_Cvar_Set("vr_button_map_RTHUMBFORWARDLEFT", "+weapon_select"); + trap_Cvar_Set("vr_button_map_PRIMARYTHUMBSTICK", "+weapon_select"); + trap_Cvar_Set("vr_button_map_PRIMARYGRIP", "+alt"); // switch to alt layout + trap_Cvar_Set("vr_button_map_RTHUMBLEFT_ALT", "turnleft"); // turn left + trap_Cvar_Set("vr_button_map_RTHUMBRIGHT_ALT", "turnright"); // turn right + trap_Cvar_Set("vr_button_map_RTHUMBFORWARD_ALT", "weapnext"); + if (uturn) { + trap_Cvar_Set("vr_button_map_RTHUMBBACK_ALT", "uturn"); + } else { + trap_Cvar_Set("vr_button_map_RTHUMBBACK_ALT", "weapprev"); + } + trap_Cvar_Set("vr_button_map_RTHUMBFORWARDRIGHT_ALT", "blank"); // unmapped + trap_Cvar_Set("vr_button_map_RTHUMBBACKRIGHT_ALT", "blank"); // unmapped + trap_Cvar_Set("vr_button_map_RTHUMBBACKLEFT_ALT", "blank"); // unmapped + trap_Cvar_Set("vr_button_map_RTHUMBFORWARDLEFT_ALT", "blank"); // unmapped + break; + } + } else if (Q_stricmp(name, "vr_uturn") == 0) { + int controlSchema = (int)trap_Cvar_VariableValue( "vr_controlSchema" ) % 2; + if (val) { + if (controlSchema == 0) { + trap_Cvar_Set("vr_button_map_RTHUMBBACK", "uturn"); + } else { + trap_Cvar_Set("vr_button_map_RTHUMBBACK_ALT", "uturn"); + } + } else { + if (controlSchema == 0) { + trap_Cvar_Set("vr_button_map_RTHUMBBACK", ""); + } else { + trap_Cvar_Set("vr_button_map_RTHUMBBACK_ALT", ""); + } + } } } diff --git a/android/app/src/main/pakQ3Q/ui/controls3.menu b/android/app/src/main/pakQ3Q/ui/controls3.menu index 329a4c44..d711c2bf 100755 --- a/android/app/src/main/pakQ3Q/ui/controls3.menu +++ b/android/app/src/main/pakQ3Q/ui/controls3.menu @@ -42,7 +42,7 @@ itemDef { type ITEM_TYPE_YESNO text "Autoswitch Weapons:" cvar "cg_autoswitch" - rect 99 125 256 20 + rect 99 75 256 20 textalign ITEM_ALIGN_RIGHT textalignx 128 textaligny 20 @@ -57,7 +57,7 @@ itemDef { type ITEM_TYPE_YESNO text "Railgun Scope:" cvar "vr_weaponScope" - rect 99 150 256 20 + rect 99 100 256 20 textalign ITEM_ALIGN_RIGHT textalignx 128 textaligny 20 @@ -72,7 +72,7 @@ itemDef { type ITEM_TYPE_YESNO text "Two-Handed Weapons:" cvar "vr_twoHandedWeapons" - rect 99 175 256 20 + rect 99 125 256 20 textalign ITEM_ALIGN_RIGHT textalignx 128 textaligny 20 @@ -88,13 +88,29 @@ itemDef { text "Direction Mode:" cvar "vr_directionMode" cvarFloatList { "HMD (Default)" 0 "Off-hand Controller" 1 } - rect 99 200 256 20 + rect 99 150 256 20 textalign ITEM_ALIGN_RIGHT textalignx 128 textaligny 20 textscale .333 forecolor 1 1 1 1 - visible 1 + visible 1 + } + + itemDef { + name controls3 + group grpControls3 + type ITEM_TYPE_YESNO + text "Quick U-Turn:" + cvar "vr_uturn" + rect 99 175 256 20 + textalign ITEM_ALIGN_RIGHT + textalignx 128 + textaligny 20 + textscale .333 + forecolor 1 1 1 1 + visible 1 + action { uiScript update "vr_uturn" } } itemDef { @@ -104,7 +120,7 @@ itemDef { text "Turning Mode:" cvar "vr_snapturn" cvarFloatList { "Smooth Turning" 0 "45 Degrees" 45 "90 Degrees" 90 } - rect 99 225 256 20 + rect 99 200 256 20 textalign ITEM_ALIGN_RIGHT textalignx 128 textaligny 20 @@ -119,7 +135,7 @@ itemDef { type ITEM_TYPE_YESNO text "Right-Handed:" cvar "vr_righthanded" - rect 99 250 256 20 + rect 99 225 256 20 textalign ITEM_ALIGN_RIGHT textalignx 128 textaligny 20 @@ -134,7 +150,7 @@ itemDef { type ITEM_TYPE_YESNO text "Switch Thumbsticks:" cvar "vr_switchThumbsticks" - rect 99 275 256 20 + rect 99 250 256 20 textalign ITEM_ALIGN_RIGHT textalignx 128 textaligny 20 @@ -149,7 +165,7 @@ itemDef { type ITEM_TYPE_SLIDER text "Weapon Pitch:" cvarfloat "vr_weaponPitch" 5 -25 5 - rect 99 300 256 20 + rect 99 275 256 20 textalign ITEM_ALIGN_RIGHT textalignx 128 textaligny 20 @@ -165,7 +181,7 @@ itemDef { text "Weapon Wheel Mode:" cvar "vr_weaponSelectorMode" cvarFloatList { "Controller Based" 0 "HMD/Thumbstick Based" 1 } - rect 99 325 256 20 + rect 99 300 256 20 textalign ITEM_ALIGN_RIGHT textalignx 128 textaligny 20 @@ -174,6 +190,22 @@ itemDef { visible 1 } + itemDef { + name controls3 + group grpControls3 + type ITEM_TYPE_MULTI + text "Control Schema:" + cvar "vr_controlSchema" + cvarFloatList { "Weapon Wheel on Grip" 0 "Weapon Wheel on Thumbstick" 1 } + rect 99 325 256 20 + textalign ITEM_ALIGN_RIGHT + textalignx 100 + textaligny 20 + textscale .333 + forecolor 1 1 1 1 + visible 1 + action { uiScript update "vr_controlSchema" } + } itemDef { name fadebox diff --git a/android/app/src/main/pakQ3Q/ui/ingame_controls.menu b/android/app/src/main/pakQ3Q/ui/ingame_controls.menu index 95698d8e..93d0a414 100755 --- a/android/app/src/main/pakQ3Q/ui/ingame_controls.menu +++ b/android/app/src/main/pakQ3Q/ui/ingame_controls.menu @@ -180,7 +180,7 @@ itemDef { type ITEM_TYPE_YESNO text "Railgun Scope:" cvar "vr_weaponScope" - rect 30 40 200 20 + rect 30 38 200 20 textalign ITEM_ALIGN_RIGHT textalignx 143 textaligny 17 @@ -194,7 +194,7 @@ itemDef { type ITEM_TYPE_YESNO text "Two-Handed Weapons:" cvar "vr_twoHandedWeapons" - rect 30 60 200 20 + rect 30 56 200 20 textalign ITEM_ALIGN_RIGHT textalignx 143 textaligny 17 @@ -210,7 +210,7 @@ itemDef { text "Direction Mode:" cvar "vr_directionMode" cvarFloatList { "HMD (Default)" 0 "Off-hand Controller" 1 } - rect 30 80 200 20 + rect 30 74 200 20 textalign ITEM_ALIGN_RIGHT textalignx 143 textaligny 17 @@ -222,16 +222,33 @@ itemDef { itemDef { name controls group grpControls + type ITEM_TYPE_MULTI text "Turning Mode:" cvar "vr_snapturn" cvarFloatList { "Smooth Turning" 0 "45 Degrees" 45 "90 Degrees" 90 } - rect 30 100 200 20 + rect 30 92 200 20 + textalign ITEM_ALIGN_RIGHT + textalignx 143 + textaligny 17 + textscale .25 + forecolor 1 1 1 1 + visible 1 + } + + itemDef { + name controls + group grpControls + type ITEM_TYPE_YESNO + text "Quick U-Turn:" + cvar "vr_uturn" + rect 30 110 200 20 textalign ITEM_ALIGN_RIGHT textalignx 143 textaligny 17 textscale .25 forecolor 1 1 1 1 - visible 1 + visible 1 + action { uiScript update "vr_uturn" } } itemDef { @@ -240,7 +257,7 @@ itemDef { type ITEM_TYPE_YESNO text "Right-Handed:" cvar "vr_righthanded" - rect 30 120 200 20 + rect 30 128 200 20 textalign ITEM_ALIGN_RIGHT textalignx 143 textaligny 17 @@ -255,7 +272,7 @@ itemDef { type ITEM_TYPE_YESNO text "Switch Thumbsticks:" cvar "vr_switchThumbsticks" - rect 30 140 200 20 + rect 30 146 200 20 textalign ITEM_ALIGN_RIGHT textalignx 143 textaligny 17 @@ -270,7 +287,7 @@ itemDef { type ITEM_TYPE_SLIDER text "Weapon Pitch:" cvarfloat "vr_weaponPitch" 5 -25 5 - rect 30 160 200 20 + rect 30 164 200 20 textalign ITEM_ALIGN_RIGHT textalignx 143 textaligny 17 @@ -286,21 +303,38 @@ itemDef { text "Weapon Wheel Mode:" cvar "vr_weaponSelectorMode" cvarFloatList { "Controller Based" 0 "HMD/Thumbstick Based" 1 } - rect 30 180 200 20 + rect 30 182 200 20 + textalign ITEM_ALIGN_RIGHT + textalignx 143 + textaligny 17 + textscale .25 + forecolor 1 1 1 1 + visible 1 + } + + itemDef { + name controls + group grpControls + type ITEM_TYPE_MULTI + text "Control Schema:" + cvar "vr_controlSchema" + cvarFloatList { "Weapon Wheel on Grip" 0 "Weapon Wheel on Thumbstick" 1 } + rect 30 200 200 20 textalign ITEM_ALIGN_RIGHT textalignx 143 textaligny 17 textscale .25 forecolor 1 1 1 1 - visible 1 + visible 1 + action { uiScript update "vr_controlSchema" } } - + itemDef { name controls group grpControls style 1 text "Comfort Options" - rect 100 215 100 20 + rect 100 231 100 20 textalign ITEM_ALIGN_RIGHT textalignx 143 textaligny 17 @@ -315,7 +349,7 @@ itemDef { type ITEM_TYPE_SLIDER text "Comfort Vignette:" cvarfloat "vr_comfortVignette" 0.2 0 1 - rect 30 240 200 20 + rect 30 251 200 20 textalign ITEM_ALIGN_RIGHT textalignx 143 textaligny 17 @@ -329,7 +363,7 @@ itemDef { type ITEM_TYPE_SLIDER text "Height Adjust:" cvarfloat "vr_heightAdjust" 0.2 0 1 - rect 30 260 200 20 + rect 30 271 200 20 textalign ITEM_ALIGN_RIGHT textalignx 143 textaligny 17 @@ -343,7 +377,7 @@ itemDef { type ITEM_TYPE_YESNO text "Roll When Hit:" cvar "vr_rollWhenHit" - rect 30 280 200 20 + rect 30 291 200 20 textalign ITEM_ALIGN_RIGHT textalignx 143 textaligny 17 @@ -357,7 +391,7 @@ itemDef { type ITEM_TYPE_SLIDER text "Haptic Intensity:" cvarfloat "vr_hapticIntensity" 0.2 0 1 - rect 30 300 200 20 + rect 30 311 200 20 textalign ITEM_ALIGN_RIGHT textalignx 143 textaligny 17 @@ -372,7 +406,7 @@ itemDef { text "HUD Depth:" cvar "vr_hudDepth" cvarFloatList { "Very Close" 0 "Close" 1 "Middle" 2 "Further" 3 "Far" 4 "Distant" 5 } - rect 30 320 200 20 + rect 30 331 200 20 textalign ITEM_ALIGN_RIGHT textalignx 143 textaligny 17 @@ -386,7 +420,7 @@ itemDef { type ITEM_TYPE_SLIDER text "HUD Y Offset:" cvarfloat "vr_hudYOffset" 20 -200 200 - rect 30 340 200 20 + rect 30 351 200 20 textalign ITEM_ALIGN_RIGHT textalignx 143 textaligny 17