refactor: made the input reader expandable
This commit is contained in:
parent
12304c6bb4
commit
59a3d96b5b
10 changed files with 72 additions and 24 deletions
|
@ -2,28 +2,7 @@
|
|||
|
||||
namespace Domain {
|
||||
public static class Win32API {
|
||||
private static bool _cTrencadaWasPressed;
|
||||
private static bool _cTrencadaPressed;
|
||||
//VK_OEM_2 = 0xBF | cedilla
|
||||
//https://learn.microsoft.com/en-us/windows/win32/inputdev/virtual-key-codes
|
||||
private const int Key = 0xBF;
|
||||
|
||||
public static void UpdateInput() {
|
||||
_cTrencadaWasPressed = _cTrencadaPressed;
|
||||
if (_cTrencadaPressed && GetAsyncKeyState(Key) == 0) {
|
||||
_cTrencadaPressed = false;
|
||||
return;
|
||||
}
|
||||
if (!_cTrencadaPressed && GetAsyncKeyState(Key) != 0) {
|
||||
_cTrencadaPressed = true;
|
||||
}
|
||||
}
|
||||
|
||||
public static bool CTrencadaDown() {
|
||||
return _cTrencadaPressed && !_cTrencadaWasPressed;
|
||||
}
|
||||
|
||||
[DllImport("User32.dll")]
|
||||
private static extern short GetAsyncKeyState(int vKey);
|
||||
public static extern short GetAsyncKeyState(int vKey);
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue