Fixed SDKHooks looking for IServerTools on < Orangebox, causing load failure (bug 5603).
This commit is contained in:
		
							parent
							
								
									0ac7867b3d
								
							
						
					
					
						commit
						74aafaa72f
					
				| @ -291,7 +291,10 @@ ISmmAPI *g_SMAPI = NULL;					/**< SourceMM API pointer */ | |||||||
| 
 | 
 | ||||||
| IVEngineServer *engine = NULL;				/**< IVEngineServer pointer */ | IVEngineServer *engine = NULL;				/**< IVEngineServer pointer */ | ||||||
| IServerGameDLL *gamedll = NULL;				/**< IServerGameDLL pointer */ | IServerGameDLL *gamedll = NULL;				/**< IServerGameDLL pointer */ | ||||||
|  | 
 | ||||||
|  | #if SOURCE_ENGINE >= SE_ORANGEBOX | ||||||
| IServerTools *servertools = NULL;			/**< IServerTools pointer */ | IServerTools *servertools = NULL;			/**< IServerTools pointer */ | ||||||
|  | #endif | ||||||
| 
 | 
 | ||||||
| /** Exposes the extension to Metamod */ | /** Exposes the extension to Metamod */ | ||||||
| SMM_API void *PL_EXPOSURE(const char *name, int *code) | SMM_API void *PL_EXPOSURE(const char *name, int *code) | ||||||
| @ -324,10 +327,12 @@ bool SDKExtension::Load(PluginId id, ISmmAPI *ismm, char *error, size_t maxlen, | |||||||
| #if !defined METAMOD_PLAPI_VERSION | #if !defined METAMOD_PLAPI_VERSION | ||||||
| 	GET_V_IFACE_ANY(serverFactory, gamedll, IServerGameDLL, INTERFACEVERSION_SERVERGAMEDLL); | 	GET_V_IFACE_ANY(serverFactory, gamedll, IServerGameDLL, INTERFACEVERSION_SERVERGAMEDLL); | ||||||
| 	GET_V_IFACE_CURRENT(engineFactory, engine, IVEngineServer, INTERFACEVERSION_VENGINESERVER); | 	GET_V_IFACE_CURRENT(engineFactory, engine, IVEngineServer, INTERFACEVERSION_VENGINESERVER); | ||||||
| 	GET_V_IFACE_CURRENT(serverFactory, servertools, IServerTools, VSERVERTOOLS_INTERFACE_VERSION); |  | ||||||
| #else | #else | ||||||
| 	GET_V_IFACE_ANY(GetServerFactory, gamedll, IServerGameDLL, INTERFACEVERSION_SERVERGAMEDLL); | 	GET_V_IFACE_ANY(GetServerFactory, gamedll, IServerGameDLL, INTERFACEVERSION_SERVERGAMEDLL); | ||||||
| 	GET_V_IFACE_CURRENT(GetEngineFactory, engine, IVEngineServer, INTERFACEVERSION_VENGINESERVER); | 	GET_V_IFACE_CURRENT(GetEngineFactory, engine, IVEngineServer, INTERFACEVERSION_VENGINESERVER); | ||||||
|  | #endif | ||||||
|  | 
 | ||||||
|  | #if SOURCE_ENGINE >= SE_ORANGEBOX | ||||||
| 	GET_V_IFACE_CURRENT(GetServerFactory, servertools, IServerTools, VSERVERTOOLS_INTERFACE_VERSION); | 	GET_V_IFACE_CURRENT(GetServerFactory, servertools, IServerTools, VSERVERTOOLS_INTERFACE_VERSION); | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -301,8 +301,10 @@ extern INativeInterface *ninvoke; | |||||||
| PLUGIN_GLOBALVARS(); | PLUGIN_GLOBALVARS(); | ||||||
| extern IVEngineServer *engine; | extern IVEngineServer *engine; | ||||||
| extern IServerGameDLL *gamedll; | extern IServerGameDLL *gamedll; | ||||||
|  | #if SOURCE_ENGINE >= SE_ORANGEBOX | ||||||
| extern IServerTools *servertools; | extern IServerTools *servertools; | ||||||
| #endif | #endif | ||||||
|  | #endif | ||||||
| 
 | 
 | ||||||
| /** Creates a SourceMod interface macro pair */ | /** Creates a SourceMod interface macro pair */ | ||||||
| #define SM_MKIFACE(name) SMINTERFACE_##name##_NAME, SMINTERFACE_##name##_VERSION | #define SM_MKIFACE(name) SMINTERFACE_##name##_NAME, SMINTERFACE_##name##_VERSION | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user