Merge pull request #84 from Peter0x44/main

CLIENT: Allow toggling rumble support
This commit is contained in:
cypress 2024-06-30 21:29:42 -07:00 committed by GitHub
commit 99ec57a277
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 22 additions and 1 deletions

View file

@ -81,6 +81,7 @@ noref void(float apiver, string enginename, float enginever) CSQC_Init =
cvar_set("r_fb_models", ftos(0));
autocvar(r_viewmodel_default_fov, 70);
autocvar(cl_controllerglyphs, "xbox");
autocvar(in_rumbleenabled, 1);
// Runtime check if we're running this in WebASM/WebGL.
if (cvar_string("sys_platform") == "Web")
@ -1166,7 +1167,11 @@ noref void() CSQC_Parse_Event =
screenflash_starttime = time;
break;
case CSQC_EVENT_RUMBLE:
gp_rumble(last_input_deviceid, readshort(), readshort(), readshort());
float low_frequency = readshort();
float high_frequency = readshort();
float duration = readshort();
if (cvar("in_rumbleenabled"))
gp_rumble(last_input_deviceid, low_frequency, high_frequency, duration);
break;
case EVENT_WEAPONRECOIL:
local vector rec;

View file

@ -793,6 +793,12 @@ void() settings_adsmode =
localcmd("bind MOUSE2 \"+button8\"\n");
}
void() settings_rumble =
{
float rumble = cvar("in_rumbleenabled");
cvar_set("in_rumbleenabled", ftos(!rumble));
}
void() setting_mastervol =
{
float vol = cvar("volume");
@ -1005,6 +1011,7 @@ var struct
// Control Settings (cont.)
{[6, 115], "Invert Mouse", -1, setting_invert, null, MENU_CONSETTINGS, 0, OPTION_WEB_AND_EXE}, // 66
{[6, 135], "Controller Glyphs", -1, setting_glyph, null, MENU_CONSETTINGS, 0, OPTION_WEB_AND_EXE}, // 67
{[6, 155], "Rumble", -1, settings_rumble, null, MENU_CONSETTINGS, 0, OPTION_WEB_AND_EXE}, // 68
// Main menu (cont.)
{[6, 145], "Achievements (Not on Web)", -1, null, null, MENU_MAIN, 1, OPTION_WEB_ONLY}, // 3
@ -1495,6 +1502,12 @@ void() Draw_Extra_CSettings =
else
drawstring([320, 115], S_ENABLED, [14, 14], [1, 1, 1], 1, 0);
// Rumble
if (cvar("in_rumbleenabled") == 0)
drawstring([320, 155], S_DISABLED, [14, 14], [1, 1, 1], 1, 0);
else
drawstring([320, 155], S_ENABLED, [14, 14], [1, 1, 1], 1, 0);
// Controller Glyphs
string controller_glyph_brand = "Unknown";
switch(cvar_string("cl_controllerglyphs")) {
@ -1531,6 +1544,9 @@ void() Draw_Extra_CSettings =
case 67:
cset_desc = "Glyph Branding type to display for Controllers.";
break;
case 68:
cset_desc = "Toggle Rumble support for Controllers.";
break;
default:
cset_desc = "";
break;