From ef4294ab4752e913639f79570b5d5929e51628a3 Mon Sep 17 00:00:00 2001 From: MihailRis Date: Thu, 18 Apr 2024 22:37:51 +0300 Subject: [PATCH] pause menu moved to xml --- res/layouts/pages/pause.xml | 8 ++++++++ src/frontend/hud.cpp | 4 +--- src/frontend/hud.h | 1 - src/frontend/menu/menu.h | 2 -- src/frontend/menu/menu_pause.cpp | 24 ------------------------ 5 files changed, 9 insertions(+), 30 deletions(-) create mode 100644 res/layouts/pages/pause.xml diff --git a/res/layouts/pages/pause.xml b/res/layouts/pages/pause.xml new file mode 100644 index 00000000..c75429e6 --- /dev/null +++ b/res/layouts/pages/pause.xml @@ -0,0 +1,8 @@ + + + + + + diff --git a/src/frontend/hud.cpp b/src/frontend/hud.cpp index d3b52ecd..b4c268a6 100644 --- a/src/frontend/hud.cpp +++ b/src/frontend/hud.cpp @@ -178,8 +178,7 @@ std::shared_ptr Hud::createHotbar() { } Hud::Hud(Engine* engine, LevelFrontend* frontend, Player* player) - : engine(engine), - assets(engine->getAssets()), + : assets(engine->getAssets()), gui(engine->getGUI()), frontend(frontend), player(player) @@ -552,7 +551,6 @@ void Hud::setPause(bool pause) { auto menu = gui->getMenu(); if (pause) { - menus::create_pause_panel(engine, frontend->getController()); menu->setPage("pause"); } else { menu->reset(); diff --git a/src/frontend/hud.h b/src/frontend/hud.h index aaf787c1..981afd4d 100644 --- a/src/frontend/hud.h +++ b/src/frontend/hud.h @@ -65,7 +65,6 @@ public: }; class Hud { - Engine* engine; Assets* assets; std::unique_ptr uicamera; gui::GUI* gui; diff --git a/src/frontend/menu/menu.h b/src/frontend/menu/menu.h index 53950c15..059fecdd 100644 --- a/src/frontend/menu/menu.h +++ b/src/frontend/menu/menu.h @@ -26,8 +26,6 @@ namespace menus { // implemented in menu_create_world.cpp extern void create_world_generators_panel(Engine* engine); - // implemented in menu_pause.cpp - extern void create_pause_panel(Engine* engine, LevelController* controller); extern std::shared_ptr create_packs_panel( const std::vector& packs, Engine* engine, diff --git a/src/frontend/menu/menu_pause.cpp b/src/frontend/menu/menu_pause.cpp index 8c274eb4..f1e74525 100644 --- a/src/frontend/menu/menu_pause.cpp +++ b/src/frontend/menu/menu_pause.cpp @@ -101,27 +101,3 @@ void menus::add_packs( controller->saveWorld(); reopen_world(engine, world); } - -void menus::create_pause_panel(Engine* engine, LevelController* controller) { - auto menu = engine->getGUI()->getMenu(); - auto panel = create_page(engine, "pause", 400, 0.0f, 1); - - panel->add(create_button(L"Continue", glm::vec4(10.0f), glm::vec4(1), [=](GUI*){ - menu->reset(); - })); - panel->add(create_button(L"Content", glm::vec4(10.0f), glm::vec4(1), [=](GUI*) { - menu->setPage("content"); - })); - panel->add(guiutil::gotoButton(L"Settings", "settings", menu)); - - panel->add(create_button(L"Save and Quit to Menu", glm::vec4(10.f), glm::vec4(1), [=](GUI*){ - engine->postRunnable([=]() { - // save world - controller->saveWorld(); - // destroy LevelScreen and run quit callbacks - engine->setScreen(nullptr); - // create and go to menu screen - engine->setScreen(std::make_shared(engine)); - }); - })); -}