* Replace the hardcoded SLASH define with an actual keybind.

This was a thing in released Minecraft
This commit is contained in:
iProgramInCpp
2023-08-22 19:31:15 +03:00
parent bf5114e684
commit 282ecf85d4
5 changed files with 10 additions and 16 deletions

View File

@@ -382,6 +382,7 @@
<ClInclude Include="$(MC_ROOT)\thirdparty\zlib\zlib.h" />
<ClInclude Include="$(MC_ROOT)\thirdparty\zlib\zutil.h" />
<ClInclude Include="..\..\..\compat\KeyCodes.hpp" />
<ClInclude Include="..\..\..\compat\SDLKeyCodes.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(MC_ROOT)\compat\GLExt.cpp" />

View File

@@ -1170,6 +1170,9 @@
<ClInclude Include="..\..\..\compat\KeyCodes.hpp">
<Filter>thirdparty</Filter>
</ClInclude>
<ClInclude Include="..\..\..\compat\SDLKeyCodes.h">
<Filter>thirdparty</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(MC_ROOT)\thirdparty\raknet\TwoWayAuthentication.cpp">

View File

@@ -412,28 +412,14 @@ void Gui::handleKeyPressed(int keyCode)
return;
}
#ifdef PLATFORM_ANDROID
// Android already has this defined
#elif defined(_WIN32)
#define AKEYCODE_SLASH VK_OEM_2
#elif defined(USE_SDL)
#define AKEYCODE_SLASH SDLVK_SLASH
#else
#error "Define the slash key here!"
#endif
if (keyCode == AKEYCODE_SLASH || m_pMinecraft->m_options.isKey(KM_CHAT, keyCode))
if (m_pMinecraft->m_options.isKey(KM_CHAT_CMD, keyCode) || m_pMinecraft->m_options.isKey(KM_CHAT, keyCode))
{
if (m_pMinecraft->m_pScreen)
return;
m_pMinecraft->setScreen(new ChatScreen(keyCode == AKEYCODE_SLASH));
m_pMinecraft->setScreen(new ChatScreen(m_pMinecraft->m_options.isKey(KM_CHAT_CMD, keyCode)));
return;
}
#ifdef AKEYCODE_SLASH
#undef AKEYCODE_SLASH
#endif
}
void Gui::renderMessages(bool bShowAll)

View File

@@ -90,6 +90,7 @@ void Options::initDefaultValues()
KM(KM_TOGGLE3RD, "key.fn.3rd", 0x74); // VK_F5
KM(KM_FLY_UP, "key.fly.up", 'X');
KM(KM_FLY_DOWN, "key.fly.down", 'C');
KM(KM_CHAT_CMD, "key.chat.cmd", 0xBF); // VK_OEM_2
#undef KM
#ifdef ORIGINAL_CODE
@@ -136,6 +137,7 @@ void Options::initDefaultValues()
KM(KM_SLOT_R, SDLVK_u);
KM(KM_FLY_UP, SDLVK_c);
KM(KM_FLY_DOWN, SDLVK_x);
KM(KM_CHAT_CMD, SDLVK_SLASH);
#endif
#ifdef PLATFORM_ANDROID
// -- Original xperia play controls
@@ -192,6 +194,7 @@ void Options::initDefaultValues()
KM(KM_TOGGLE3RD, AKEYCODE_F5);
KM(KM_FLY_UP, AKEYCODE_C);
KM(KM_FLY_DOWN, AKEYCODE_X);
KM(KM_CHAT_CMD, AKEYCODE_SLASH);
#endif
#undef KM
}

View File

@@ -49,6 +49,7 @@ enum eKeyMappingIndex
KM_TOGGLE3RD,
KM_FLY_UP,
KM_FLY_DOWN,
KM_CHAT_CMD, // called "Open Chat" in Release 1.8
KM_COUNT,
};