#include "common.hpp" #include "core/globals.hpp" #include "features.hpp" #include "fiber_pool.hpp" #include "gui.hpp" #include "logger.hpp" #include "hooking.hpp" #include "pointers.hpp" #include "renderer.hpp" #include "script_mgr.hpp" #include "thread_pool.hpp" #include "native_hooks/native_hooks.hpp" #include "services/globals_service.hpp" #include "services/player_service.hpp" #include "services/mobile_service.hpp" #include "services/vehicle_service.hpp" BOOL APIENTRY DllMain(HMODULE hmod, DWORD reason, PVOID) { using namespace big; if (reason == DLL_PROCESS_ATTACH) { DisableThreadLibraryCalls(hmod); g_hmodule = hmod; g_main_thread = CreateThread(nullptr, 0, [](PVOID) -> DWORD { while (!FindWindow(L"grcWindow", L"Grand Theft Auto V")) std::this_thread::sleep_for(1s); std::filesystem::path base_dir = std::getenv("appdata"); base_dir /= "BigBaseV2"; auto file_manager_instance = std::make_unique(base_dir); auto globals_instance = std::make_unique( file_manager_instance->get_project_file("./settings.json") ); auto logger_instance = std::make_unique( "YimMenu", file_manager_instance->get_project_file("./cout.log") ); try { LOG(INFO) << "Yim's Menu Initializing"; auto pointers_instance = std::make_unique(); LOG(INFO) << "Pointers initialized."; auto renderer_instance = std::make_unique(); LOG(INFO) << "Renderer initialized."; auto fiber_pool_instance = std::make_unique(10); LOG(INFO) << "Fiber pool initialized."; auto hooking_instance = std::make_unique(); LOG(INFO) << "Hooking initialized."; g->load(); LOG(INFO) << "Settings Loaded."; auto thread_pool_instance = std::make_unique(); LOG(INFO) << "Thread pool initialized."; auto globals_service_instace = std::make_unique(); auto mobile_service_instance = std::make_unique(); auto player_service_instance = std::make_unique(); auto vehicle_service_instance = std::make_unique(); LOG(INFO) << "Registered service instances..."; g_script_mgr.add_script(std::make_unique