From 621864b9b00ba7a9ae0fceb0a7db3ace6d4906b9 Mon Sep 17 00:00:00 2001 From: Bottinator22 Date: Fri, 25 Apr 2025 00:27:10 -0700 Subject: allow forcing legacy connections --- source/frontend/StarTitleScreen.cpp | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'source/frontend/StarTitleScreen.cpp') diff --git a/source/frontend/StarTitleScreen.cpp b/source/frontend/StarTitleScreen.cpp index a32b51a..f1ffcd9 100644 --- a/source/frontend/StarTitleScreen.cpp +++ b/source/frontend/StarTitleScreen.cpp @@ -213,6 +213,15 @@ void TitleScreen::setMultiPlayerPassword(String password) { m_password = std::move(password); } +bool TitleScreen::multiPlayerForceLegacy() const { + return m_forceLegacy; +} + +void TitleScreen::setMultiPlayerForceLegacy(bool const& forceLegacy) { + m_multiPlayerMenu->fetchChild("legacyCheckbox")->setChecked(forceLegacy); + m_forceLegacy = forceLegacy; +} + void TitleScreen::initMainMenu() { m_mainMenu = make_shared(); auto backMenu = make_shared(); @@ -347,7 +356,8 @@ void TitleScreen::initMultiPlayerMenu() { {"address", multiPlayerAddress()}, {"account", multiPlayerAccount()}, {"port", multiPlayerPort()}, - //{"password", multiPlayerPassword()} + //{"password", multiPlayerPassword()}, + {"forceLegacy",multiPlayerForceLegacy()} }; auto serverList = m_serverSelectPane->fetchChild("serverSelectArea.serverList"); @@ -384,6 +394,7 @@ void TitleScreen::initMultiPlayerMenu() { setMultiPlayerPort(data.getString("port", "")); setMultiPlayerAccount(data.getString("account", "")); setMultiPlayerPassword(data.getString("password", "")); + setMultiPlayerForceLegacy(data.getBool("forceLegacy", false)); if (auto passwordWidget = m_multiPlayerMenu->fetchChild("password")) passwordWidget->focus(); @@ -406,6 +417,10 @@ void TitleScreen::initMultiPlayerMenu() { readerConnect.registerCallback("password", [=](Widget* obj) { m_password = convert(obj)->getText().trim(); }); + + readerConnect.registerCallback("legacyCheckbox", [=](Widget* obj) { + m_forceLegacy = convert(obj)->isChecked(); + }); readerConnect.registerCallback("connect", [=](Widget*) { switchState(TitleState::StartMultiPlayer); -- cgit v1.2.3