chore: cleanup the getcontrollertype stuff

This commit is contained in:
2026-09-02 18:58:45 -04:00
parent 0917179043
commit 758549ceca
4 changed files with 30 additions and 39 deletions
+3 -15
View File
@@ -175,21 +175,9 @@ void C_4JInput::GetText(uint16_t *UTF16String)
InternalKeyboard.GetText(UTF16String);
}
const char* C_4JInput::PollControllerType(int ipad) {
const char* GamepadType = InternalInputManager.GetGamepadType(ipad);
if (!GamepadType)
return "UNKNOWN";
if (strcmp(GamepadType, "SWITCH_PRO") == 0 ||
strcmp(GamepadType, "JOYCON_PAIR") == 0 ||
strcmp(GamepadType, "JOYCON_L") == 0 ||
strcmp(GamepadType, "JOYCON_R") == 0)
{
return "SWITCH";
}
return GamepadType; // str1k3r - if not one of the switch types, return the type itself
const char* C_4JInput::GetControllerType(int ipad)
{
return InternalInputManager.GetControllerType(ipad); //strk13r - mrow mrow mrow mrowwwwwwwwwww, i am silly kitty
}
bool C_4JInput::VerifyStrings(WCHAR **pwStringA, int iStringC, int (*Func)(LPVOID, STRING_VERIFY_RESPONSE *), LPVOID lpParam)
+3 -2
View File
@@ -314,14 +314,15 @@ unsigned int CInput::GetGameJoypadMaps(unsigned char ucMap, unsigned char ucActi
return m_JoypadMap[ucMap][ucAction];
}
const char* CInput::GetGamepadType(int iPad)
//str1k3r - renamed to match the Orbis Input lib, why did i rename it cause tism
const char* CInput::GetControllerType(int iPad)
{
if (!m_Joypads[iPad].m_pGamepad)
{
return "UNKNOWN";
}
return GamepadTypeName(SDL_GetGamepadType(m_Joypads[iPad].m_pGamepad));
return GetControllerName(SDL_GetGamepadType(m_Joypads[iPad].m_pGamepad)); // str1k3r - magic we return it :shocked:
}
void CInput::SetJoypadMapVal(int iPad, unsigned char ucMap)
+23 -21
View File
@@ -31,26 +31,6 @@ SOFTWARE.
class CInput
{
private:
const char* GamepadTypeName(SDL_GamepadType type)
{
switch (type)
{
case SDL_GAMEPAD_TYPE_UNKNOWN: return "UNKNOWN";
case SDL_GAMEPAD_TYPE_GAMECUBE: return "GAMECUBE";
case SDL_GAMEPAD_TYPE_STANDARD: return "STANDARD";
case SDL_GAMEPAD_TYPE_XBOX360: return "XBOX360";
case SDL_GAMEPAD_TYPE_XBOXONE: return "XBOXONE";
case SDL_GAMEPAD_TYPE_PS3: return "PS3";
case SDL_GAMEPAD_TYPE_PS4: return "PS4";
case SDL_GAMEPAD_TYPE_PS5: return "PS5";
case SDL_GAMEPAD_TYPE_NINTENDO_SWITCH_PRO: return "SWITCH_PRO";
case SDL_GAMEPAD_TYPE_NINTENDO_SWITCH_JOYCON_LEFT: return "JOYCON_L";
case SDL_GAMEPAD_TYPE_NINTENDO_SWITCH_JOYCON_RIGHT: return "JOYCON_R";
case SDL_GAMEPAD_TYPE_NINTENDO_SWITCH_JOYCON_PAIR: return "JOYCON_PAIR";
default: return "UNKNOWN";
}
}
public:
struct JOYPAD
{
@@ -121,7 +101,7 @@ public:
void SetGameJoypadMaps(unsigned char ucMap, unsigned char ucAction, unsigned int uiActionVal);
unsigned int GetGameJoypadMaps(unsigned char ucMap, unsigned char ucAction);
const char* GetGamepadType(int iPad);
const char* GetControllerType(int iPad);
void SetJoypadMapVal(int iPad, unsigned char ucMap);
unsigned char GetJoypadMapVal(int iPad);
@@ -204,6 +184,28 @@ public:
unsigned int m_uiDebugSequenceIndex;
int (*m_pDebugSequenceFn)(void *);
LPVOID m_pDebugSequenceParam;
private:
const char* GetControllerName(SDL_GamepadType type)
{
switch (type)
{
case SDL_GAMEPAD_TYPE_UNKNOWN: return "UNKNOWN";
case SDL_GAMEPAD_TYPE_GAMECUBE: return "GAMECUBE";
case SDL_GAMEPAD_TYPE_STANDARD: return "STANDARD";
case SDL_GAMEPAD_TYPE_XBOX360: return "XBOX360";
case SDL_GAMEPAD_TYPE_XBOXONE: return "XBOXONE";
case SDL_GAMEPAD_TYPE_PS3: return "PS3";
case SDL_GAMEPAD_TYPE_PS4: return "PS4";
case SDL_GAMEPAD_TYPE_PS5: return "PS5";
//str1k3r - we are ALL FROM THE SWITCH JUST RETURN THE SAMETHING, mrow
case SDL_GAMEPAD_TYPE_NINTENDO_SWITCH_PRO:
case SDL_GAMEPAD_TYPE_NINTENDO_SWITCH_JOYCON_LEFT:
case SDL_GAMEPAD_TYPE_NINTENDO_SWITCH_JOYCON_RIGHT:
case SDL_GAMEPAD_TYPE_NINTENDO_SWITCH_JOYCON_PAIR: return "SWITCH";
default: return "UNKNOWN";
}
}
};
// Singleton
+1 -1
View File
@@ -136,7 +136,7 @@ public:
EKeyboardResult RequestKeyboard(LPCWSTR Title, LPCWSTR Text, DWORD dwPad, UINT uiMaxChars, int( *Func)(LPVOID,const bool),LPVOID lpParam,C_4JInput::EKeyboardMode eMode);
void DestroyKeyboard();
void GetText(uint16_t *UTF16String);
const char* PollControllerType(int ipad);
const char* GetControllerType(int ipad);
void SetLostInputControlCallback(void( *Func)(LPVOID, bool),LPVOID lpParam);