diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/audio_sys.h (renamed from src/audio.h) | 0 | ||||
| -rw-r--r-- | src/controller.c | 59 | ||||
| -rw-r--r-- | src/controller.h | 16 |
3 files changed, 73 insertions, 2 deletions
diff --git a/src/audio.h b/src/audio_sys.h index 8a5b6cc..8a5b6cc 100644 --- a/src/audio.h +++ b/src/audio_sys.h diff --git a/src/controller.c b/src/controller.c index e52eec5..434e3d6 100644 --- a/src/controller.c +++ b/src/controller.c @@ -2,6 +2,8 @@ #include <raylib.h> +// Keyboard things + b32 is_key_pressed(i32 btn) { return IsKeyPressed(btn); @@ -17,6 +19,63 @@ b32 is_key_released(i32 btn) return IsKeyReleased(btn); } +// Mouse things + +b32 is_mouse_pressed(i32 btn) +{ + return IsMouseButtonPressed(btn); +} + +b32 is_mouse_held(i32 btn) +{ + return IsMouseButtonDown(btn); +} + +b32 is_mouse_released(i32 btn) +{ + return IsMouseButtonReleased(btn); +} + +void set_mouse_scale(f32 x, f32 y) +{ + SetMouseScale(x, y); +} + +vec2 get_mouse_pos(void) +{ + Vector2 pos = GetMousePosition(); + return (vec2){FP_TO_FIXED(pos.x), FP_TO_FIXED(pos.y)}; +} + +fx32 get_wheel_movement(void) +{ + return FP_TO_FIXED(GetMouseWheelMove()); +} + +// Gamepad things + +b32 is_button_pressed(i32 btn) +{ + return IsGamepadButtonPressed(0, btn); +} + +b32 is_button_held(i32 btn) +{ + return IsGamepadButtonDown(0, btn); +} + +b32 is_button_released(i32 btn) +{ + return IsGamepadButtonReleased(0, btn); +} + +i32 last_button_press(void) +{ + return GetGamepadButtonPressed(); +} + +// Movement things + vec2 get_dir_input(void) { fx32 cont_x = FP_TO_FIXED(GetGamepadAxisMovement(0, 0)); diff --git a/src/controller.h b/src/controller.h index e4a7683..3476641 100644 --- a/src/controller.h +++ b/src/controller.h @@ -2,12 +2,24 @@ #include "config.h" -// TODO: Controller button presses you DINGUS - b32 is_key_pressed(i32 btn); b32 is_key_held(i32 btn); b32 is_key_released(i32 btn); +b32 is_mouse_pressed(i32 btn); +b32 is_mouse_held(i32 btn); +b32 is_mouse_released(i32 btn); + +void set_mouse_scale(f32 x, f32 y); +vec2 get_mouse_pos(void); +fx32 get_wheel_movement(void); + +b32 is_button_pressed(i32 btn); +b32 is_button_held(i32 btn); +b32 is_button_released(i32 btn); + +i32 last_button_press(void); + vec2 get_dir_input(void); // This portion is implemented in rumble.c! // |
