private void RT(State state) { var value = state.Gamepad.RightTrigger; xinput.SetSliderValue(DualShock4Slider.RightTrigger, value); xinput.SetButtonState(DualShock4Button.TriggerRight, true); }
private void DoUpdateInput(OutputControllerDualShock4InputState new_state) { controller.SetButtonState(DualShock4Button.Triangle, new_state.triangle); controller.SetButtonState(DualShock4Button.Circle, new_state.circle); controller.SetButtonState(DualShock4Button.Cross, new_state.cross); controller.SetButtonState(DualShock4Button.Square, new_state.square); controller.SetButtonState(DualShock4Button.ShoulderLeft, new_state.shoulder_left); controller.SetButtonState(DualShock4Button.ShoulderRight, new_state.shoulder_right); controller.SetButtonState(DualShock4Button.TriggerLeft, new_state.trigger_left); controller.SetButtonState(DualShock4Button.TriggerRight, new_state.trigger_right); controller.SetButtonState(DualShock4Button.ThumbLeft, new_state.thumb_left); controller.SetButtonState(DualShock4Button.ThumbRight, new_state.thumb_right); controller.SetButtonState(DualShock4Button.Share, new_state.share); controller.SetButtonState(DualShock4Button.Options, new_state.options); controller.SetButtonState(DualShock4SpecialButton.Ps, new_state.ps); controller.SetButtonState(DualShock4SpecialButton.Touchpad, new_state.touchpad); controller.SetDPadDirection(MapDPadDirection(new_state.dPad)); controller.SetAxisValue(DualShock4Axis.LeftThumbX, new_state.thumb_left_x); controller.SetAxisValue(DualShock4Axis.LeftThumbY, new_state.thumb_left_y); controller.SetAxisValue(DualShock4Axis.RightThumbX, new_state.thumb_right_x); controller.SetAxisValue(DualShock4Axis.RightThumbY, new_state.thumb_right_y); controller.SetSliderValue(DualShock4Slider.LeftTrigger, new_state.trigger_left_value); controller.SetSliderValue(DualShock4Slider.RightTrigger, new_state.trigger_right_value); controller.SubmitReport(); current_state = new_state; }
public static void SetTriggerRight(IDualShock4Controller controller, byte bite) { // triggers need to be set twice as per https://github.com/ViGEm/ViGEm.NET/issues/14 bool triggerBool = GetTriggerPressedFromByte(bite); controller.SetButtonState(DualShock4Button.TriggerRight, triggerBool); controller.SetSliderValue(DualShock4Slider.RightTrigger, bite); }
private void SetValueIfNeeded(DualShock4Slider slider, double?value) { if (value.HasValue) { var newValue = (byte)(value.Value * byte.MaxValue); controller.SetSliderValue(slider, newValue); } }