Disallow formspec debug if the player does not have the debug privilege (#14753)

This commit is contained in:
l-koehler 2024-06-17 13:59:49 +00:00 committed by GitHub
parent fac9aac821
commit fe6da3a16b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 13 additions and 2 deletions

@ -1914,6 +1914,10 @@ void Game::updateDebugState()
if (!has_debug) {
draw_control->show_wireframe = false;
m_flags.disable_camera_update = false;
auto formspec = m_game_ui->getFormspecGUI();
if (formspec) {
formspec->setDebugView(false);
}
}
// noclip

@ -4184,8 +4184,10 @@ bool GUIFormSpecMenu::OnEvent(const SEvent& event)
m_client->makeScreenshot();
}
if (event.KeyInput.PressedDown && kp == getKeySetting("keymap_toggle_debug"))
m_show_debug = !m_show_debug;
if (event.KeyInput.PressedDown && kp == getKeySetting("keymap_toggle_debug")) {
if (!m_client || m_client->checkPrivilege("debug"))
m_show_debug = !m_show_debug;
}
if (event.KeyInput.PressedDown &&
(event.KeyInput.Key==KEY_RETURN ||

@ -223,6 +223,11 @@ public:
m_allowclose = value;
}
void setDebugView(bool value)
{
m_show_debug = value;
}
void lockSize(bool lock,v2u32 basescreensize=v2u32(0,0))
{
m_lock = lock;