Table of Contents

Enum GamepadTouch

Namespace
MaaFramework.Binding
Assembly
MaaFramework.Binding.dll
Virtual gamepad touch contact definitions for <xref href="MaaFramework.Binding.IMaaController.TouchDown(System.Int32%2cSystem.Int32%2cSystem.Int32%2cSystem.Int32)" data-throw-if-not-resolved="false"></xref> / <xref href="MaaFramework.Binding.IMaaController.TouchMove(System.Int32%2cSystem.Int32%2cSystem.Int32%2cSystem.Int32)" data-throw-if-not-resolved="false"></xref> / <xref href="MaaFramework.Binding.IMaaController.TouchUp(System.Int32)" data-throw-if-not-resolved="false"></xref>

For gamepad controller, the touch functions are repurposed for analog inputs:
- x, y: Analog stick position
- pressure: Trigger value (0~255)

Contact mapping:

| Contact       | Input           | x range       | y range       | pressure   | Description                      |
    |---------------|-----------------|---------------|---------------|------------|----------------------------------|
    | LeftStick     | Left Stick      | -32768~32767  | -32768~32767  | ignored    | Left analog stick X/Y position   |
    | RightStick    | Right Stick     | -32768~32767  | -32768~32767  | ignored    | Right analog stick X/Y position  |
    | LeftTrigger   | Left Trigger    | ignored       | ignored       | 0~255      | Left trigger (LT/L2) value       |
    | RightTrigger  | Right Trigger   | ignored       | ignored       | 0~255      | Right trigger (RT/R2) value      |

Usage:
- touch_down(contact, x, y, pressure): Start analog input
- touch_move(contact, x, y, pressure): Update analog input position/value
- touch_up(contact): Release/reset analog input to center/zero

public enum GamepadTouch : ulong

Fields

LeftStick = 0
LeftTrigger = 2
RightStick = 1
RightTrigger = 3