diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/gui/cheatMenu.cpp | 19 | ||||
-rw-r--r-- | src/gui/cheatMenu.h | 5 |
2 files changed, 14 insertions, 10 deletions
diff --git a/src/gui/cheatMenu.cpp b/src/gui/cheatMenu.cpp index d72a14480..9225414a2 100644 --- a/src/gui/cheatMenu.cpp +++ b/src/gui/cheatMenu.cpp @@ -81,25 +81,24 @@ void CheatMenu::drawEntry(video::IVideoDriver *driver, std::string name, } void CheatMenu::draw(video::IVideoDriver *driver, bool show_debug) -{ - CHEAT_MENU_GET_SCRIPTPTR + + ClientScripting *script{ getScript() }; + if (!script || !script->m_cheats_loaded) if (!show_debug) drawEntry(driver, "Dragonfireclient", 0, 0, false, false, CHEAT_MENU_ENTRY_TYPE_HEAD); int category_count = 0; - for (auto category = script->m_cheat_categories.begin(); - category != script->m_cheat_categories.end(); category++) { + for (const auto &menu_item : m_cheat_categories) { bool is_selected = category_count == m_selected_category; - drawEntry(driver, (*category)->m_name, category_count, 0, is_selected, + drawEntry(driver, menu_item.m_name, category_count, 0, is_selected, false, CHEAT_MENU_ENTRY_TYPE_CATEGORY); if (is_selected && m_cheat_layer) { int cheat_count = 0; - for (auto cheat = (*category)->m_cheats.begin(); - cheat != (*category)->m_cheats.end(); cheat++) { - drawEntry(driver, (*cheat)->m_name, category_count, cheat_count, + for (const auto &sub_menu_item : menu_item.m_cheats) { + drawEntry(driver, sub_menu_item.m_name, category_count, cheat_count, cheat_count == m_selected_cheat, - (*cheat)->is_enabled()); + sub_menu_item.is_enabled()); cheat_count++; } } @@ -132,7 +131,7 @@ void CheatMenu::selectRight() void CheatMenu::selectDown() { CHEAT_MENU_GET_SCRIPTPTR - + m_cheat_layer = true; int max = script->m_cheat_categories[m_selected_category]->m_cheats.size(); diff --git a/src/gui/cheatMenu.h b/src/gui/cheatMenu.h index e7fb4dc93..e42edfbb0 100644 --- a/src/gui/cheatMenu.h +++ b/src/gui/cheatMenu.h @@ -42,6 +42,11 @@ class CheatMenu public: CheatMenu(Client *client); + Client* getScript() + { + return m_client->getScript(); + } + void draw(video::IVideoDriver *driver, bool show_debug); void drawEntry(video::IVideoDriver *driver, std::string name, |