joy.cpl: Add parameters for Condition FF effects.

Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Aric Stewart 2018-01-18 13:56:23 -06:00 committed by Alexandre Julliard
parent 90a094cc24
commit afb9de281e

View file

@ -724,6 +724,7 @@ static BOOL CALLBACK ff_effects_callback(const DIEFFECTINFOW *pdei, void *pvRef)
DIRAMPFORCE rforce;
DICONSTANTFORCE cforce;
DIPERIODIC pforce;
DICONDITION cdforce;
if (joystick->effects == NULL)
{
@ -777,6 +778,22 @@ static BOOL CALLBACK ff_effects_callback(const DIEFFECTINFOW *pdei, void *pvRef)
dieffect.lpvTypeSpecificParams = &pforce;
dieffect.dwFlags |= DIEP_TYPESPECIFICPARAMS;
}
else if (IsEqualGUID(&pdei->guid, &GUID_Spring) ||
IsEqualGUID(&pdei->guid, &GUID_Damper) ||
IsEqualGUID(&pdei->guid, &GUID_Inertia) ||
IsEqualGUID(&pdei->guid, &GUID_Friction))
{
cdforce.dwPositiveSaturation = 10000;
cdforce.dwNegativeSaturation = 10000;
cdforce.lPositiveCoefficient = 10000;
cdforce.lNegativeCoefficient = 10000;
cdforce.lDeadBand = 0;
cdforce.lOffset = 0;
dieffect.cbTypeSpecificParams = sizeof(cdforce);
dieffect.lpvTypeSpecificParams = &cdforce;
dieffect.dwFlags |= DIEP_TYPESPECIFICPARAMS;
}
hr = IDirectInputDevice2_CreateEffect(
joystick->device, &pdei->guid, &dieffect, &joystick->effects[joystick->cur_effect].effect, NULL);