fix: lock survival when hardcore and swf changes

This commit is contained in:
George V.
2026-04-12 00:22:11 +03:00
parent 1a78363ee5
commit 401ccbcdc9
3 changed files with 15 additions and 1 deletions

View File

@@ -680,10 +680,24 @@ void UIScene_CreateWorldMenu::handleSliderMove(F64 sliderId, F64 currentValue)
m_iGameModeId = GameType::SURVIVAL->getId();
m_bGameModeCreative = false;
m_sliderGamemode.handleSliderMove(GameType::SURVIVAL->getId());
m_sliderGamemode.setLabel(app.GetString(IDS_GAMEMODE_SURVIVAL));
}
break;
case eControl_GameModeToggle:
m_sliderGamemode.handleSliderMove(value);
// Hardcore locks game mode to Survival
if (s_bHardcore)
{
if (value != GameType::SURVIVAL->getId())
{
m_sliderGamemode.handleSliderMove(GameType::SURVIVAL->getId());
m_sliderGamemode.setLabel(app.GetString(IDS_GAMEMODE_SURVIVAL));
return;
}
}
else
{
m_sliderGamemode.handleSliderMove(value);
}
switch (value)
{
case 0: // Survival