-
Notifications
You must be signed in to change notification settings - Fork 0
/
Input.cpp
32 lines (25 loc) · 912 Bytes
/
Input.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include "Input.hpp"
bool *Input::isKeyClickedStates = (bool *)calloc(sf::Keyboard::KeyCount, sizeof(sf::Keyboard::Key));
bool *Input::isMouseClickedStates = (bool *)calloc(sf::Mouse::ButtonCount, sizeof(sf::Mouse::Button));
void Input::clearKeysClicked() {
for (size_t i = 0; i < sf::Keyboard::KeyCount; ++i) {
Input::isKeyClickedStates[i] = false;
}
}
void Input::updateKeysClicked(sf::Keyboard::Key key, bool state) {
Input::isKeyClickedStates[key] = state;
}
bool Input::isKeyClicked(sf::Keyboard::Key key) {
return Input::isKeyClickedStates[key];
}
void Input::clearMouseClicked() {
for (size_t i = 0; i < sf::Mouse::ButtonCount; ++i) {
Input::isMouseClickedStates[i] = false;
}
}
void Input::updateMouseClicked(sf::Mouse::Button btn, bool state) {
Input::isMouseClickedStates[btn] = state;
}
bool Input::isMouseClicked(sf::Mouse::Button btn) {
return Input::isMouseClickedStates[btn];
}