#include "common.hpp" #include "core/backend/ScriptMgr.hpp" #include "core/backend/FiberPool.hpp" #include "core/commands/Commands.hpp" #include "core/commands/HotkeySystem.hpp" #include "core/settings/Settings.hpp" #include "core/filemgr/FileMgr.hpp" #include "core/frontend/Notifications.hpp" #include "core/hooking/Hooking.hpp" #include "core/memory/ModuleMgr.hpp" #include "core/renderer/Renderer.hpp" #include "game/backend/AnticheatBypass.hpp" #include "game/backend/Players.hpp" #include "game/backend/SavedLocations.hpp" #include "game/backend/Self.hpp" #include "game/backend/NativeHooks.hpp" #include "game/frontend/GUI.hpp" #include "game/pointers/Pointers.hpp" #include "game/features/recovery/GiveVehicleReward.hpp" namespace YimMenu { DWORD Main(void*) { const auto documents = std::filesystem::path(std::getenv("appdata")) / "YimMenuV2"; FileMgr::Init(documents); LogHelper::Init("YimMenuV2", FileMgr::GetProjectFile("./cout.log")); g_HotkeySystem.RegisterCommands(); SavedLocations::FetchSavedLocations(); Settings::Initialize(FileMgr::GetProjectFile("./settings.json")); if (!ModuleMgr.LoadModules()) goto EARLY_UNLOAD; if (!Pointers.Init()) goto EARLY_UNLOAD; if (!Renderer::Init()) goto EARLY_UNLOAD; Players::Init(); Hooking::Init(); ScriptMgr::Init(); LOG(INFO) << "ScriptMgr initialized"; GUI::Init(); ScriptMgr::AddScript(std::make_unique