amxmodx/public/resdk/mod_rehlds_api.cpp
Vincent Herbet da80667fb0 Ignore ReHLDS initialization on listenserver (#425)
* Remove duplicated files

* Ignore ReHLDS initialization if not a dedicated server
2017-03-19 14:12:07 +01:00

43 lines
934 B
C++

#include "mod_rehlds_api.h"
IRehldsApi* RehldsApi;
const RehldsFuncs_t* RehldsFuncs;
IRehldsServerData* RehldsData;
IRehldsHookchains* RehldsHookchains;
IRehldsServerStatic* RehldsSvs;
bool RehldsApi_Init()
{
if (!IS_DEDICATED_SERVER())
{
return false;
}
#if defined(PLATFORM_WINDOWS)
auto library = "swds";
#elif defined(PLATFORM_POSIX)
auto library = "engine_i486";
#endif
if (!GET_IFACE<IRehldsApi>(library, RehldsApi, VREHLDS_HLDS_API_VERSION) || !RehldsApi)
{
return false;
}
auto majorVersion = RehldsApi->GetMajorVersion();
auto minorVersion = RehldsApi->GetMinorVersion();
if (majorVersion != REHLDS_API_VERSION_MAJOR || minorVersion < REHLDS_API_VERSION_MINOR)
{
return false;
}
RehldsFuncs = RehldsApi->GetFuncs();
RehldsData = RehldsApi->GetServerData();
RehldsHookchains = RehldsApi->GetHookchains();
RehldsSvs = RehldsApi->GetServerStatic();
return true;
}