diff --git a/core/HalfLife2.cpp b/core/HalfLife2.cpp index 7c0b9781..9e2bad5b 100644 --- a/core/HalfLife2.cpp +++ b/core/HalfLife2.cpp @@ -50,8 +50,8 @@ typedef ICommandLine *(*FakeGetCommandLine)(); -#define TIER0_NAME SOURCE_BIN_PREFIX "tier0" SOURCE_BIN_SUFFIX SOURCE_BIN_EXT -#define VSTDLIB_NAME SOURCE_BIN_PREFIX "vstdlib" SOURCE_BIN_SUFFIX SOURCE_BIN_EXT +#define TIER0_NAME FORMAT_SOURCE_BIN_NAME("tier0") +#define VSTDLIB_NAME FORMAT_SOURCE_BIN_NAME("vstdlib") CHalfLife2 g_HL2; ConVar *sv_lan = NULL; diff --git a/core/HalfLife2.h b/core/HalfLife2.h index 51212d4e..6393a3ce 100644 --- a/core/HalfLife2.h +++ b/core/HalfLife2.h @@ -84,6 +84,9 @@ using namespace SourceMod; #define SOURCE_BIN_EXT ".so" #endif +#define FORMAT_SOURCE_BIN_NAME(basename) \ + (SOURCE_BIN_PREFIX basename SOURCE_BIN_SUFFIX SOURCE_BIN_EXT) + struct DataTableInfo { struct SendPropPolicy diff --git a/core/logic_bridge.cpp b/core/logic_bridge.cpp index 990e3a30..729599d3 100644 --- a/core/logic_bridge.cpp +++ b/core/logic_bridge.cpp @@ -627,13 +627,7 @@ void CoreProviderImpl::InitializeBridge() this->serverFactory = (void *)g_SMAPI->GetServerFactory(false); this->listeners = SMGlobalClass::head; - char path[PLATFORM_MAX_PATH]; - - ke::path::Format(path, sizeof(path), - "%s/bin/" PLATFORM_FOLDER "matchmaking_ds" SOURCE_BIN_SUFFIX SOURCE_BIN_EXT, - g_SMAPI->GetBaseDir()); - - if (ke::RefPtr mmlib = ke::SharedLib::Open(path, NULL, 0)) { + if (ke::RefPtr mmlib = ke::SharedLib::Open(FORMAT_SOURCE_BIN_NAME("matchmaking_ds"), NULL, 0)) { this->matchmakingDSFactory = mmlib->get("CreateInterface"); }