add bindings to query gamepad's face buttons

This commit is contained in:
2026-01-20 04:19:26 +00:00
parent 6f89fbc89c
commit f2bffc4b6b
2 changed files with 38 additions and 0 deletions

View File

@@ -66,3 +66,27 @@ float getLeftJoystickYAxisState() {
return 99.0; return 99.0;
} }
} }
int isCrossButtonPressed() {
return state.buttons[GLFW_GAMEPAD_BUTTON_CROSS];
}
int isCircleButtonPressed() {
return state.buttons[GLFW_GAMEPAD_BUTTON_CIRCLE];
}
int isSquareButtonPressed() {
return state.buttons[GLFW_GAMEPAD_BUTTON_SQUARE];
}
int isTriangleButtonPressed() {
return state.buttons[GLFW_GAMEPAD_BUTTON_TRIANGLE];
}
int isR1ButtonPressed() {
return state.buttons[GLFW_GAMEPAD_BUTTON_RIGHT_BUMPER];
}
int isL1ButtonPressed() {
return state.buttons[GLFW_GAMEPAD_BUTTON_LEFT_BUMPER];
}

View File

@@ -53,6 +53,7 @@ struct
_symbol "KEY_ARROW_DOWN" public : ( unit -> int ) * ( int -> unit ); _symbol "KEY_ARROW_DOWN" public : ( unit -> int ) * ( int -> unit );
val KEY_ARROW_DOWN = KEY_ARROW_DOWN () val KEY_ARROW_DOWN = KEY_ARROW_DOWN ()
(* gamepad bindings below *)
val getGamepadState = val getGamepadState =
_import "getGamepadState" public : int -> unit; _import "getGamepadState" public : int -> unit;
@@ -60,4 +61,17 @@ struct
_import "getLeftJoystickXAxisState" public : unit -> Real32.real; _import "getLeftJoystickXAxisState" public : unit -> Real32.real;
val getLeftJoystickYAxisState = val getLeftJoystickYAxisState =
_import "getLeftJoystickYAxisState" public : unit -> Real32.real; _import "getLeftJoystickYAxisState" public : unit -> Real32.real;
val isCrossButtonPressed =
_import "isCrossButtonPressed" public : unit -> int;
val isCircleButtonPressed =
_import "isCircleButtonPressed" public : unit -> int;
val isSquareButtonPressed =
_import "isSquareButtonPressed" public : unit -> int;
val isTriangleButtonPressed =
_import "isTriangleButtonPressed" public : unit -> int;
val isR1ButtonPressed =
_import "isR1ButtonPressed" public : unit -> int;
val isL1ButtonPressed =
_import "isL1ButtonPressed" public : unit -> int;
end end