aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/gui/cheatMenu.cpp19
-rw-r--r--src/gui/cheatMenu.h5
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,