mirror of
https://github.com/perfect-dark-pc-port/perfect_dark.git
synced 2026-10-23 15:52:41 +02:00
mpsetups: introduced "menu alt" button/key to toggle presets
Currently the "menu alt" (L/R buttons, or Ctrl/Alt keys) is fixed, but we may make it bindable later
This commit is contained in:
1 parent
7a98095a0b
commit
f9cfa0fa43
5 files changed
+81
-11
No files matched your search
@@ -40,6 +40,7 @@ enum virtkey {
|
||||
VK_DELETE = 76,
|
||||
VK_LCTRL = 224,
|
||||
VK_LSHIFT = 225,
|
||||
VK_LALT = 226,
|
||||
VK_RCTRL = 228,
|
||||
VK_RSHIFT = 229,
|
||||
|
||||
@@ -56,6 +57,8 @@ enum virtkey {
|
||||
/* same order as SDL gamecontroller buttons plus two buttons for triggers */
|
||||
VK_JOY_BEGIN,
|
||||
VK_JOY1_BEGIN = VK_JOY_BEGIN,
|
||||
VK_JOY1_LSHOULDER = VK_JOY1_BEGIN + 9,
|
||||
VK_JOY1_RSHOULDER = VK_JOY1_BEGIN + 10,
|
||||
VK_JOY1_LTRIG = VK_JOY1_BEGIN + 30,
|
||||
VK_JOY1_RTRIG = VK_JOY1_BEGIN + 31,
|
||||
VK_JOY2_BEGIN = VK_JOY1_BEGIN + INPUT_MAX_CONTROLLER_BUTTONS,
|
||||
@@ -267,4 +270,8 @@ const char *inputGetClipboard(void);
|
||||
// returns keymod values
|
||||
u32 inputGetKeyModState(void);
|
||||
|
||||
s32 inputMenuAlt1MenuPressed(s32 playerNum);
|
||||
s32 inputMenuAlt2MenuPressed(s32 playerNum);
|
||||
s32 inputMenuAltMenuPressed(s32 playerNum);
|
||||
|
||||
#endif
|
||||
@@ -1162,6 +1162,33 @@ s32 inputKeyJustPressed(u32 vk)
|
||||
return result;
|
||||
}
|
||||
|
||||
s32 inputMenuAlt1MenuPressed(s32 playerNum)
|
||||
{
|
||||
s32 RSHOULDER = VK_JOY1_RSHOULDER + playerNum * INPUT_MAX_CONTROLLER_BUTTONS;
|
||||
|
||||
if (playerNum == 0) {
|
||||
return inputKeyJustPressed(VK_LCTRL) || inputKeyJustPressed(RSHOULDER);
|
||||
}
|
||||
|
||||
return inputKeyJustPressed(RSHOULDER);
|
||||
}
|
||||
|
||||
s32 inputMenuAlt2MenuPressed(s32 playerNum)
|
||||
{
|
||||
s32 LSHOULDER = VK_JOY1_LSHOULDER + playerNum * INPUT_MAX_CONTROLLER_BUTTONS;
|
||||
|
||||
if (playerNum == 0) {
|
||||
return inputKeyJustPressed(VK_LALT) || inputKeyJustPressed(LSHOULDER);
|
||||
}
|
||||
|
||||
return inputKeyJustPressed(LSHOULDER);
|
||||
}
|
||||
|
||||
s32 inputMenuAltMenuPressed(s32 playerNum)
|
||||
{
|
||||
return inputMenuAlt1MenuPressed(playerNum) || inputMenuAlt2MenuPressed(playerNum);
|
||||
}
|
||||
|
||||
static inline u32 inputContToContKey(const u32 cont)
|
||||
{
|
||||
if (cont == 0) {
|
||||
|
||||
Reference in new issue
Block a user