diff --git a/UnleashedRecomp/patches/frontend_listener.cpp b/UnleashedRecomp/patches/frontend_listener.cpp index 0dd92ed..9061948 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 1042443..0000000 --- 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 729cb49..569f86e 100644 --- a/UnleashedRecomp/user/config_def.h +++ b/UnleashedRecomp/user/config_def.h @@ -84,3 +84,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);