mirror of
https://github.com/TerryCavanagh/VVVVVV.git
synced 2026-01-30 18:04:09 +03:00
Add controller button layout mappings
This adds mappings from SDL's Xbox-based SDL_GameControllerButton constants, to glyphs for the following layouts: - LAYOUT_NINTENDO_SWITCH_PRO, - LAYOUT_NINTENDO_SWITCH_JOYCON_L, - LAYOUT_NINTENDO_SWITCH_JOYCON_R, - LAYOUT_DECK, - LAYOUT_PLAYSTATION, - LAYOUT_XBOX, - LAYOUT_GENERIC, There may still be errors in these, but they should be mostly correct. I'm leaving it up to Ethan to make it show the correct button glyphs for the correct controllers being connected (and possibly to fix these mappings where needed).
This commit is contained in:
committed by
Misa Elizabeth Kai
parent
09365347b6
commit
e55e9efd9b
@@ -9,38 +9,6 @@
|
||||
#include "Maths.h"
|
||||
#include "VFormat.h"
|
||||
|
||||
static const char* GCChar(const SDL_GameControllerButton button)
|
||||
{
|
||||
switch (button)
|
||||
{
|
||||
case SDL_CONTROLLER_BUTTON_A:
|
||||
return "A";
|
||||
case SDL_CONTROLLER_BUTTON_B:
|
||||
return "B";
|
||||
case SDL_CONTROLLER_BUTTON_X:
|
||||
return "X";
|
||||
case SDL_CONTROLLER_BUTTON_Y:
|
||||
return "Y";
|
||||
case SDL_CONTROLLER_BUTTON_BACK:
|
||||
return "BACK";
|
||||
case SDL_CONTROLLER_BUTTON_GUIDE:
|
||||
return "GUIDE";
|
||||
case SDL_CONTROLLER_BUTTON_START:
|
||||
return "START";
|
||||
case SDL_CONTROLLER_BUTTON_LEFTSTICK:
|
||||
return "L3";
|
||||
case SDL_CONTROLLER_BUTTON_RIGHTSTICK:
|
||||
return "R3";
|
||||
case SDL_CONTROLLER_BUTTON_LEFTSHOULDER:
|
||||
return "LB";
|
||||
case SDL_CONTROLLER_BUTTON_RIGHTSHOULDER:
|
||||
return "RB";
|
||||
default:
|
||||
SDL_assert(0 && "Unhandled button!");
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
int ss_toi(const std::string& str)
|
||||
{
|
||||
int retval = 0;
|
||||
@@ -157,20 +125,6 @@ int UtilityClass::Int(const char* str, int fallback /*= 0*/)
|
||||
return (int) SDL_strtol(str, NULL, 0);
|
||||
}
|
||||
|
||||
std::string UtilityClass::GCString(const std::vector<SDL_GameControllerButton>& buttons)
|
||||
{
|
||||
std::string retval = "";
|
||||
for (size_t i = 0; i < buttons.size(); i += 1)
|
||||
{
|
||||
retval += GCChar(buttons[i]);
|
||||
if ((i + 1) < buttons.size())
|
||||
{
|
||||
retval += ",";
|
||||
}
|
||||
}
|
||||
return retval;
|
||||
}
|
||||
|
||||
int UtilityClass::hms_to_seconds(int h, int m, int s)
|
||||
{
|
||||
return h*3600 + m*60 + s;
|
||||
|
||||
Reference in New Issue
Block a user