From 7d4e505f2d5ac060874e0cee8952ee15cd81fd4d Mon Sep 17 00:00:00 2001 From: Cheeseworks Date: Sun, 17 May 2026 17:35:47 -0500 Subject: [PATCH 1/9] initial impl --- include/horrible/API.h | 25 +++++++++++++ include/horrible/Events.hpp | 4 +++ include/horrible/Option.hpp | 3 ++ mod.json | 25 +++++++++---- src/API.cpp | 53 +++++++++++++++++++++++++++- src/Utils.h | 1 + src/hooks/Dementia.cpp | 1 + src/hooks/DoubleJump.cpp | 1 + src/hooks/Gambler.cpp | 1 + src/hooks/InverseInput.cpp | 1 + src/hooks/OnIce.cpp | 1 + src/hooks/Parry.cpp | 1 + src/hooks/Placebo.cpp | 1 + src/hooks/Sleepy.cpp | 1 + src/hooks/Sticky.cpp | 1 + src/hooks/jumpscares/ForceLevels.cpp | 2 ++ src/hooks/playerlife/Health.cpp | 1 + src/hooks/randoms/ClickSpeed.cpp | 1 + src/hooks/randoms/FakeCrash.cpp | 1 + src/hooks/randoms/Freeze.cpp | 1 + src/hooks/randoms/Gravity.cpp | 1 + src/hooks/randoms/RandomNoJump.cpp | 1 + src/hooks/randoms/RandomSpeed.cpp | 1 + src/hooks/randoms/SizeChanger.cpp | 1 + src/hooks/randoms/SuperJump.cpp | 1 + src/hooks/randoms/TimewarpJump.cpp | 1 + src/main.cpp | 25 +++++++++---- src/ui/src/Menu.cpp | 20 +++++++++-- 28 files changed, 161 insertions(+), 16 deletions(-) diff --git a/include/horrible/API.h b/include/horrible/API.h index d12b5e5..076804c 100644 --- a/include/horrible/API.h +++ b/include/horrible/API.h @@ -34,6 +34,8 @@ namespace horrible { geode::utils::StringMap> m_options; // Map of registered options std::vector m_categories; // Array of auto-registered categories + std::unordered_map> m_enabledCheats; // Map of currently enabled cheat options, used for dynamic safe mode + geode::utils::StringMap m_integrations; // Map of auto-registered external mods using this API std::unordered_map> m_delegates; // Map of option ID to array of delegates to call when that option is toggled @@ -91,6 +93,13 @@ namespace horrible { */ void registerOption(std::shared_ptr