public static byte CalculateSWThrottleXinput(XInputButton button, State state) { if (button.IsButton) { var btnPress = DigitalHelper.GetButtonPressXinput(button, state, 0); if (btnPress == true) { return(0xFF); } return(0x00); } if (button.IsLeftThumbY) { return(JvsHelper.CalculateGasPos(state.Gamepad.LeftThumbY, false, false)); } if (button.IsRightThumbY) { return(JvsHelper.CalculateGasPos(state.Gamepad.RightThumbY, false, false)); } if (button.IsLeftTrigger) { return(state.Gamepad.LeftTrigger); } if (button.IsRightTrigger) { return(state.Gamepad.RightTrigger); } return(0); }
public static byte CalculateAxisOrTriggerGasBrakeXinput(XInputButton button, State state, byte minVal = 0, byte maxVal = 255) { if (button.IsButton) { var btnPress = DigitalHelper.GetButtonPressXinput(button, state, 0); if (btnPress == true) { return(0xFF); } return(0x00); } if (button.IsLeftThumbX) { return(JvsHelper.CalculateGasPos(state.Gamepad.LeftThumbX, true, false, minVal, maxVal)); } if (button.IsLeftThumbY) { return(JvsHelper.CalculateGasPos(state.Gamepad.LeftThumbY, true, false, minVal, maxVal)); } if (button.IsRightThumbX) { return(JvsHelper.CalculateGasPos(state.Gamepad.RightThumbX, true, false, minVal, maxVal)); } if (button.IsRightThumbY) { return(JvsHelper.CalculateGasPos(state.Gamepad.RightThumbY, true, false, minVal, maxVal)); } byte result = 0; if (button.IsLeftTrigger) { result = state.Gamepad.LeftTrigger; } if (button.IsRightTrigger) { result = state.Gamepad.RightTrigger; } if (result < minVal) { result = minVal; } if (result > maxVal) { result = maxVal; } return(result); }