sdlGameControllerRumbleTriggers function

int sdlGameControllerRumbleTriggers(
  1. Pointer<SdlGameController> gamecontroller,
  2. int leftRumble,
  3. int rightRumble,
  4. int durationMs,
)

Start a rumble effect in the game controller's triggers.

Each call to this function cancels any previous trigger rumble effect, and calling it with 0 intensity stops any rumbling.

Note that this is rumbling of the triggers and not the game controller as a whole. This is currently only supported on Xbox One controllers. If you want the (more common) whole-controller rumble, use SDL_GameControllerRumble() instead.

\param gamecontroller The controller to vibrate \param left_rumble The intensity of the left trigger rumble motor, from 0 to 0xFFFF \param right_rumble The intensity of the right trigger rumble motor, from 0 to 0xFFFF \param duration_ms The duration of the rumble effect, in milliseconds \returns 0, or -1 if trigger rumble isn't supported on this controller

\since This function is available since SDL 2.0.14.

\sa SDL_GameControllerHasRumbleTriggers

extern DECLSPEC int SDLCALL SDL_GameControllerRumbleTriggers(SDL_GameController *gamecontroller, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms)

Implementation

int sdlGameControllerRumbleTriggers(Pointer<SdlGameController> gamecontroller,
    int leftRumble, int rightRumble, int durationMs) {
  final sdlGameControllerRumbleTriggersLookupFunction = libSdl2.lookupFunction<
      Int32 Function(Pointer<SdlGameController> gamecontroller,
          Uint16 leftRumble, Uint16 rightRumble, Uint32 durationMs),
      int Function(Pointer<SdlGameController> gamecontroller, int leftRumble,
          int rightRumble, int durationMs)>('SDL_GameControllerRumbleTriggers');
  return sdlGameControllerRumbleTriggersLookupFunction(
      gamecontroller, leftRumble, rightRumble, durationMs);
}