mirror of
https://github.com/alliedmodders/amxmodx.git
synced 2024-12-26 23:05:37 +03:00
43 lines
958 B
C++
43 lines
958 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)
|
|
const auto library = "swds";
|
|
#elif defined(PLATFORM_POSIX)
|
|
const auto library = "engine_i486";
|
|
#endif
|
|
|
|
if (!GET_IFACE<IRehldsApi>(library, RehldsApi, VREHLDS_HLDS_API_VERSION) || !RehldsApi)
|
|
{
|
|
return false;
|
|
}
|
|
|
|
const auto majorVersion = RehldsApi->GetMajorVersion();
|
|
const 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;
|
|
}
|