al_get_mouse_state
void al_get_mouse_state(ALLEGRO_MOUSE_STATE *ret_state)
Introduced in 5.0.0
Save the state of the mouse specified at the time the function is called into the given structure.
Example:
ALLEGRO_MOUSE_STATE state;
al_get_mouse_state(&state);
if (state.buttons & 1) {
/* Primary (e.g. left) mouse button is held. */
printf("Mouse position: (%d, %d)\n", state.x, state.y);
}
if (state.buttons & 2) {
/* Secondary (e.g. right) mouse button is held. */
}
if (state.buttons & 4) {
/* Tertiary (e.g. middle) mouse button is held. */
}
See also: ALLEGRO_MOUSE_STATE, al_get_mouse_state_axis, al_mouse_button_down
Examples: ex_mouse, ex_mouse_focus
Most helpful discussions:
- get all pressed keys? (part two)
- get all pressed keys?
- Weird flex with my Bitmaps on my Screen
- floating mouse coordinates
- Strange frame skipping
- Shader Puzzle aka Reverse Engineering cool effect
- Lag when object follows mouse
- Debouncing a mouse click?
- [Allegro5] Popup menu fails to display
- How can I map mouse coordinates to world coordinates using allegro transofrms?
Other recent discussions:
- [A5] Show & Hide window/display Cross-Platform ?
- Why some Shaders don't work !
- Micro freeze when I use "al_get_joystick_state"
- Which is preferred: al_mouse_button_down or mouse_state.buttons?
- Allegro Wait for Event(Pretty slow)
- Adjust camera depending on mouse location
- More efficient way to capture mouse position?
- ALLEGRO_RESIZABLE & Mouse Pointer Collision Detection
- Drag line with mouse on a fixed angle
- Programm lagging