diff --git a/core/systems/ExtensionSys.cpp b/core/systems/ExtensionSys.cpp index 891105fc..fc85ae4d 100644 --- a/core/systems/ExtensionSys.cpp +++ b/core/systems/ExtensionSys.cpp @@ -1375,7 +1375,7 @@ void CExtensionManager::CallOnCoreMapStart(edict_t *pEdictList, int edictCount, for (iter=m_Libs.begin(); iter!=m_Libs.end(); iter++) { - if (SMINTERFACE_EXTENSIONAPI_VERSION > 3) + if ((*iter)->GetAPI()->GetExtensionVersion() > 3) { (*iter)->GetAPI()->OnCoreMapStart(pEdictList, edictCount, clientMax); } diff --git a/public/IExtensionSys.h b/public/IExtensionSys.h index 68a8e541..21e7f17a 100644 --- a/public/IExtensionSys.h +++ b/public/IExtensionSys.h @@ -40,6 +40,7 @@ * @brief Defines the interface for loading/unloading/managing extensions. */ +struct edict_t; namespace SourceMod { class IExtensionInterface; @@ -131,7 +132,7 @@ namespace SourceMod * Note: This is bumped when IShareSys is changed, because IShareSys * itself is not versioned. */ - #define SMINTERFACE_EXTENSIONAPI_VERSION 3 + #define SMINTERFACE_EXTENSIONAPI_VERSION 4 /** * @brief The interface an extension must expose.