aboutsummaryrefslogtreecommitdiff
path: root/src/gui/cheatMenu.cpp
diff options
context:
space:
mode:
authorrealOneplustwo <oneplustwoisyes@gmail.com>2020-10-21 17:49:17 -0700
committerrealOneplustwo <oneplustwoisyes@gmail.com>2020-10-21 17:49:17 -0700
commitb29d6bc196b3a6bafa1b200e8944cf277b0bc9c1 (patch)
tree806118891095cd940d98b7bb5c160fefa2c12b70 /src/gui/cheatMenu.cpp
parentaea9b36ef70dd35e8dfa370043ae5e3f3c751cb4 (diff)
downloaddragonfireclient-b29d6bc196b3a6bafa1b200e8944cf277b0bc9c1.tar.xz
Make cheat menu color and font configurable via settings
Diffstat (limited to 'src/gui/cheatMenu.cpp')
-rw-r--r--src/gui/cheatMenu.cpp45
1 files changed, 44 insertions, 1 deletions
diff --git a/src/gui/cheatMenu.cpp b/src/gui/cheatMenu.cpp
index 548ddea73..7839caaad 100644
--- a/src/gui/cheatMenu.cpp
+++ b/src/gui/cheatMenu.cpp
@@ -18,11 +18,54 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "script/scripting_client.h"
#include "client/client.h"
#include "client/fontengine.h"
+#include "settings.h"
#include <cstddef>
+FontMode fontStringToEnum(std::string str) {
+ if (str == "FM_Standard")
+ return FM_Standard;
+ else if (str == "FM_Mono")
+ return FM_Mono;
+ else if (str == "FM_Fallback")
+ return FM_Fallback;
+ else if (str == "FM_Simple")
+ return FM_Simple;
+ else if (str == "FM_SimpleMono")
+ return FM_SimpleMono;
+ else if (str == "FM_MaxMode")
+ return FM_MaxMode;
+ else if (str == "FM_Unspecified")
+ return FM_Unspecified;
+ else
+ return FM_Standard;
+}
+
CheatMenu::CheatMenu(Client *client) : m_client(client)
{
- m_font = g_fontengine->getFont(FONT_SIZE_UNSPECIFIED, FM_Mono);
+ FontMode fontMode = fontStringToEnum(g_settings->get("cheat_menu_font"));
+ irr::core::vector3df bg_color;
+ irr::core::vector3df active_bg_color;
+ irr::core::vector3df font_color;
+ irr::core::vector3df selected_font_color;
+
+ g_settings->getV3FNoEx("m_bg_color", bg_color);
+ g_settings->getV3FNoEx("m_active_bg_color", active_bg_color);
+ g_settings->getV3FNoEx("m_font_color", font_color);
+ g_settings->getV3FNoEx("m_selected_font_color", selected_font_color);
+
+ m_bg_color = video::SColor(g_settings->getU32("m_bg_color_alpha"),
+ bg_color.X, bg_color.Y, bg_color.Z);
+
+ m_active_bg_color = video::SColor(g_settings->getU32("m_active_bg_color_alpha"),
+ active_bg_color.X, active_bg_color.Y, active_bg_color.Z);
+
+ m_font_color = video::SColor(g_settings->getU32("m_font_color_alpha"),
+ font_color.X, font_color.Y, font_color.Z);
+
+ m_selected_font_color = video::SColor(g_settings->getU32("m_selected_font_color_alpha"),
+ selected_font_color.X, selected_font_color.Y, selected_font_color.Z);
+
+ m_font = g_fontengine->getFont(FONT_SIZE_UNSPECIFIED, fontMode);
if (!m_font) {
errorstream << "CheatMenu: Unable to load fallback font" << std::endl;