From 4e091eb8511d06c50db3ed2df254f09e37bdc0e2 Mon Sep 17 00:00:00 2001 From: LiamD-Flop <40887493+LiamD-Flop@users.noreply.github.com> Date: Thu, 2 Jun 2022 12:36:16 +0200 Subject: [PATCH] feat(CTX MENU): Added ctx menu toggle (#265) --- BigBaseV2/src/core/globals.hpp | 13 +++++++++++++ BigBaseV2/src/services/context_menu_service.cpp | 9 ++++++++- BigBaseV2/src/services/gui_service.hpp | 2 ++ .../views/settings/view_context_menu_settings.cpp | 9 +++++++++ BigBaseV2/src/views/view.hpp | 1 + 5 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 BigBaseV2/src/views/settings/view_context_menu_settings.cpp diff --git a/BigBaseV2/src/core/globals.hpp b/BigBaseV2/src/core/globals.hpp index 2589060c..89629731 100644 --- a/BigBaseV2/src/core/globals.hpp +++ b/BigBaseV2/src/core/globals.hpp @@ -261,6 +261,11 @@ namespace big bool switched_view = true; }; + struct context_menu + { + bool enabled = true; + }; + struct esp { bool enabled = true; @@ -304,6 +309,7 @@ namespace big vehicle vehicle{}; weapons weapons{}; window window{}; + context_menu context_menu{}; esp esp{}; menu_settings(file save_file) @@ -517,6 +523,8 @@ namespace big this->window.main = j["window"]["main"]; this->window.users = j["window"]["users"]; + this->context_menu.enabled = j["context_menu"]["enabled"]; + this->esp.enabled = j["esp"]["enabled"]; this->esp.hide_self = j["esp"]["hide_self"]; this->esp.enemy_color = j["esp"]["enemy_color"]; @@ -768,6 +776,11 @@ namespace big { "users", this->window.users } } }, + { + "context_menu", { + {"enabled", this->context_menu.enabled} + } + }, { "esp", { { "enabled", this->esp.enabled }, diff --git a/BigBaseV2/src/services/context_menu_service.cpp b/BigBaseV2/src/services/context_menu_service.cpp index 85fac14f..f11b8ee9 100644 --- a/BigBaseV2/src/services/context_menu_service.cpp +++ b/BigBaseV2/src/services/context_menu_service.cpp @@ -142,6 +142,13 @@ namespace big { while (g_running) { + if (!g->context_menu.enabled) { + g_context_menu_service->enabled = false; + + script::get_current()->yield(); + continue; + } + if (PAD::IS_DISABLED_CONTROL_JUST_RELEASED(0, (int)ControllerInputs::INPUT_VEH_DUCK)) { g_context_menu_service->enabled = !g_context_menu_service->enabled; @@ -179,7 +186,7 @@ namespace big PAD::IS_DISABLED_CONTROL_JUST_PRESSED(0, (int)ControllerInputs::INPUT_SPECIAL_ABILITY)) { if (!g_context_menu_service->m_pointer) - return; + continue; cm->options.at(cm->current_option).command(); } } diff --git a/BigBaseV2/src/services/gui_service.hpp b/BigBaseV2/src/services/gui_service.hpp index 859b739a..ae2e3a07 100644 --- a/BigBaseV2/src/services/gui_service.hpp +++ b/BigBaseV2/src/services/gui_service.hpp @@ -5,6 +5,7 @@ namespace big { enum class tabs { ESP_SETTINGS, + CONTEXT_MENU_SETTINGS, GUI_SETTINGS, HANDLING_SEARCH, HANDLING_SAVED_PROFILE, @@ -60,6 +61,7 @@ namespace big { tabs::SESSION, { "Session", view::session }}, }}}, {tabs::SETTINGS, { "Settings", view::settings, { + { tabs::CONTEXT_MENU_SETTINGS, { "Context Menu", view::context_menu_settings}}, { tabs::ESP_SETTINGS, { "ESP", view::esp_settings}}, { tabs::GUI_SETTINGS, { "GUI", view::gui_settings}}, { tabs::NOTIFICATION_SETTINGS, { "Notifications", view::notification_settings}}, diff --git a/BigBaseV2/src/views/settings/view_context_menu_settings.cpp b/BigBaseV2/src/views/settings/view_context_menu_settings.cpp new file mode 100644 index 00000000..48d87fdf --- /dev/null +++ b/BigBaseV2/src/views/settings/view_context_menu_settings.cpp @@ -0,0 +1,9 @@ +#include "views/view.hpp" + +namespace big +{ + void view::context_menu_settings() + { + ImGui::Checkbox("Context Menu Enabled", &g->context_menu.enabled); + } +} diff --git a/BigBaseV2/src/views/view.hpp b/BigBaseV2/src/views/view.hpp index eba92363..6baf1f36 100644 --- a/BigBaseV2/src/views/view.hpp +++ b/BigBaseV2/src/views/view.hpp @@ -20,6 +20,7 @@ namespace big static void active_view(); static void debug(); static void esp_settings(); + static void context_menu_settings(); static void gui_settings(); static void handling_current_profile(); static void handling_my_profiles();