Files
Nuake-custom/Nuake/src/Core/Input.h
Antoine Pilote 0c6ed48bbd Major cleanup.
Moved to namespace
Cleanup includes
2021-07-11 18:56:44 -04:00

39 lines
773 B
C++

#pragma once
#include <utility>
#include "../Core/Maths.h"
#include <map>
namespace Nuake
{
class Input
{
private:
static bool m_MouseButtons[5];
static std::map<int, bool> m_Keys;
public:
static bool IsKeyPressed(int keycode);
static bool IsKeyDown(int keycode);
static bool IsKeyReleased(int keycode);
static void HideMouse();
static void ShowMouse();
static bool IsMouseHidden();
static bool IsMouseButtonPressed(int button);
static bool IsMouseButtonDown(int button);
static bool IsMouseButtonReleased(int button);
static float GetMouseX();
static float GetMouseY();
static Vector2 GetMousePosition();
static bool Init();
static void Update();
Input* Get() { return s_Instance; }
private:
static Input* s_Instance;
};
}