From ba42d469f5ea43003e0f525148392a648e72b7f9 Mon Sep 17 00:00:00 2001 From: Skyth <19259897+blueskythlikesclouds@users.noreply.github.com> Date: Thu, 30 Jan 2025 19:04:05 +0300 Subject: [PATCH] Put HUD toggle hotkey behind an export. --- UnleashedRecomp/patches/frontend_listener.cpp | 42 ++++++++++++++++++- UnleashedRecomp/patches/frontend_listener.h | 42 ------------------- UnleashedRecomp/user/config_def.h | 1 + 3 files changed, 41 insertions(+), 44 deletions(-) delete mode 100644 UnleashedRecomp/patches/frontend_listener.h diff --git a/UnleashedRecomp/patches/frontend_listener.cpp b/UnleashedRecomp/patches/frontend_listener.cpp index 0dd92edc..9061948a 100644 --- a/UnleashedRecomp/patches/frontend_listener.cpp +++ b/UnleashedRecomp/patches/frontend_listener.cpp @@ -1,3 +1,41 @@ -#include "frontend_listener.h" +#include +#include +#include +#include +#include -FrontendListener m_frontendListener; +static class FrontendListener : public SDLEventListener +{ + bool m_isF8KeyDown = false; + +public: + void OnSDLEvent(SDL_Event* event) override + { + if (!Config::HUDToggleHotkey || OptionsMenu::s_isVisible) + return; + + switch (event->type) + { + case SDL_KEYDOWN: + { + if (event->key.keysym.sym != SDLK_F8 || m_isF8KeyDown) + break; + + // アプリケーション設定 / 開発用 / デバッグ / HUD / 全 HUD 描画 + const auto ms_IsRenderHud = (bool*)g_memory.Translate(0x8328BB26); + + *ms_IsRenderHud = !*ms_IsRenderHud; + + LOGFN("HUD {}", *ms_IsRenderHud ? "ON" : "OFF"); + + m_isF8KeyDown = true; + + break; + } + + case SDL_KEYUP: + m_isF8KeyDown = event->key.keysym.sym != SDLK_F8; + break; + } + } +} g_frontendlistener; diff --git a/UnleashedRecomp/patches/frontend_listener.h b/UnleashedRecomp/patches/frontend_listener.h deleted file mode 100644 index 10424434..00000000 --- a/UnleashedRecomp/patches/frontend_listener.h +++ /dev/null @@ -1,42 +0,0 @@ -#pragma once - -#include -#include -#include -#include - -class FrontendListener : public SDLEventListener -{ - bool m_isF8KeyDown = false; - -public: - void OnSDLEvent(SDL_Event* event) override - { - if (OptionsMenu::s_isVisible) - return; - - switch (event->type) - { - case SDL_KEYDOWN: - { - if (event->key.keysym.sym != SDLK_F8 || m_isF8KeyDown) - break; - - // アプリケーション設定 / 開発用 / デバッグ / HUD / 全 HUD 描画 - const auto ms_IsRenderHud = (bool*)g_memory.Translate(0x8328BB26); - - *ms_IsRenderHud = !*ms_IsRenderHud; - - LOGFN("HUD {}", *ms_IsRenderHud ? "ON" : "OFF"); - - m_isF8KeyDown = true; - - break; - } - - case SDL_KEYUP: - m_isF8KeyDown = event->key.keysym.sym != SDLK_F8; - break; - } - } -}; diff --git a/UnleashedRecomp/user/config_def.h b/UnleashedRecomp/user/config_def.h index 33fcde10..c44274b4 100644 --- a/UnleashedRecomp/user/config_def.h +++ b/UnleashedRecomp/user/config_def.h @@ -83,3 +83,4 @@ CONFIG_DEFINE_HIDDEN("Exports", bool, HomingAttackOnBoost, true); CONFIG_DEFINE_HIDDEN("Exports", bool, SaveScoreAtCheckpoints, false); CONFIG_DEFINE_HIDDEN("Exports", bool, SkipIntroLogos, false); CONFIG_DEFINE_HIDDEN("Exports", bool, UseOfficialTitleOnTitleBar, false); +CONFIG_DEFINE_HIDDEN("Exports", bool, HUDToggleHotkey, false);