diff --git a/source/client/gui/Gui.cpp b/source/client/gui/Gui.cpp index f2d1d8f..2f0a17d 100644 --- a/source/client/gui/Gui.cpp +++ b/source/client/gui/Gui.cpp @@ -400,11 +400,12 @@ void Gui::handleKeyPressed(int keyCode) } case AKEYCODE_T: + case AKEYCODE_SLASH: { if (m_pMinecraft->m_pScreen) break; - m_pMinecraft->setScreen(new ChatScreen); + m_pMinecraft->setScreen(new ChatScreen(keyCode == AKEYCODE_SLASH)); break; } } diff --git a/source/client/gui/screens/ChatScreen.cpp b/source/client/gui/screens/ChatScreen.cpp index b1ce2cc..9cf3d50 100644 --- a/source/client/gui/screens/ChatScreen.cpp +++ b/source/client/gui/screens/ChatScreen.cpp @@ -10,8 +10,10 @@ // @NOTE: This is unused. -ChatScreen::ChatScreen() : m_textChat(1, 0, 0), m_btnSend(2, 0, 0, "Send") +ChatScreen::ChatScreen(bool slash) : m_textChat(1, 0, 0), m_btnSend(2, 0, 0, "Send") { + if (slash) + m_textChat.m_text = "/"; } void ChatScreen::buttonClicked(Button* pButton) @@ -60,6 +62,8 @@ void ChatScreen::keyPressed(int keyCode) { if (keyCode == AKEYCODE_ENTER) sendMessageAndExit(); + + Screen::keyPressed(keyCode); } void ChatScreen::sendMessageAndExit() diff --git a/source/client/gui/screens/ChatScreen.hpp b/source/client/gui/screens/ChatScreen.hpp index cf0b136..a3a5041 100644 --- a/source/client/gui/screens/ChatScreen.hpp +++ b/source/client/gui/screens/ChatScreen.hpp @@ -13,7 +13,7 @@ class ChatScreen : public Screen { public: - ChatScreen(); + ChatScreen(bool slash = false); void buttonClicked(Button*) override; void init() override; void removed() override;