From c7b5d5a2b890fe1058d64b1c1f6c67efd0f9d37e Mon Sep 17 00:00:00 2001 From: momo5502 Date: Sun, 3 Sep 2017 20:31:58 +0200 Subject: [PATCH] [IW4MVM] Easily switch the component off --- src/Components/Loader.cpp | 2 +- src/Components/Modules/IW4MVM.cpp | 5 +++++ src/Components/Modules/IW4MVM.hpp | 2 ++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/Components/Loader.cpp b/src/Components/Loader.cpp index 0a5994cf..234bb1c5 100644 --- a/src/Components/Loader.cpp +++ b/src/Components/Loader.cpp @@ -49,7 +49,7 @@ namespace Components Loader::Register(new Zones()); Loader::Register(new Colors()); Loader::Register(new D3D9Ex()); -#if !defined(VLD_RPTHOOK_INSTALL) || defined(VLDEnable) // IW4MVM uses detours which produces memory leaks, but those are not really relevant +#if (!defined(VLD_RPTHOOK_INSTALL) || defined(VLDEnable)) && defined(COMPILE_IW4MVM) // IW4MVM uses detours which produces memory leaks, but those are not really relevant Loader::Register(new IW4MVM()); #endif Loader::Register(new Logger()); diff --git a/src/Components/Modules/IW4MVM.cpp b/src/Components/Modules/IW4MVM.cpp index bfafbd12..63bef0fa 100644 --- a/src/Components/Modules/IW4MVM.cpp +++ b/src/Components/Modules/IW4MVM.cpp @@ -1,5 +1,8 @@ #include "STDInclude.hpp" + +#ifdef COMPILE_IW4MVM #include +#endif namespace Components { @@ -11,8 +14,10 @@ namespace Components std::uint8_t* module = reinterpret_cast(GetModuleHandle(nullptr)); VirtualProtect(module + 0x1000, 0x2D6000, PAGE_EXECUTE_READWRITE, &oldProtect); +#ifdef COMPILE_IW4MVM client_main::Init(); Scheduler::Once(client_main::PostInit); +#endif Scheduler::OnFrame([]() { if (!Game::CL_IsCgameInitialized()) diff --git a/src/Components/Modules/IW4MVM.hpp b/src/Components/Modules/IW4MVM.hpp index 3e1c7cd0..1bc5941c 100644 --- a/src/Components/Modules/IW4MVM.hpp +++ b/src/Components/Modules/IW4MVM.hpp @@ -1,5 +1,7 @@ #pragma once +#define COMPILE_IW4MVM + namespace Components { class IW4MVM : public Component