iw4x-client/src/Components/Modules/IW4MVM.cpp

37 lines
783 B
C++
Raw Normal View History

2017-07-05 11:57:52 -04:00
#include "STDInclude.hpp"
#ifdef COMPILE_IW4MVM
2017-07-05 11:57:52 -04:00
#include <IW4MVM/client_main.h>
#endif
2017-07-05 11:57:52 -04:00
namespace Components
{
IW4MVM::IW4MVM()
{
if (Dedicated::IsEnabled() || ZoneBuilder::IsEnabled() || Monitor::IsEnabled() || Loader::IsPerformingUnitTests()) return;
2017-07-05 11:57:52 -04:00
DWORD oldProtect;
2020-12-19 18:00:07 -05:00
std::uint8_t* _module = reinterpret_cast<std::uint8_t*>(GetModuleHandle(nullptr));
VirtualProtect(_module + 0x1000, 0x2D6000, PAGE_EXECUTE_READWRITE, &oldProtect);
2017-07-05 11:57:52 -04:00
#ifdef COMPILE_IW4MVM
2017-07-05 11:57:52 -04:00
client_main::Init();
Scheduler::Once(client_main::PostInit);
#endif
Scheduler::OnFrame([]()
{
if (!Game::CL_IsCgameInitialized())
{
Dvar::Var("com_timescale").setRaw(1.0f);
}
});
2017-07-05 11:57:52 -04:00
2020-12-19 18:00:07 -05:00
VirtualProtect(_module + 0x1000, 0x2D6000, PAGE_EXECUTE_READ, &oldProtect);
2017-07-05 11:57:52 -04:00
}
IW4MVM::~IW4MVM()
{
}
}