Add GetGameRules to ISDKTools (bug 4707, r=fyren)
authorNicholas Hastings <skamonkey@gmail.com>
Fri Nov 19 23:02:27 2010 -0500 (2010-11-19)
changeset 3157a998690a87e4
parent 3156 2469806bb7ed
child 3158 f57d6a76bb31
Add GetGameRules to ISDKTools (bug 4707, r=fyren)
extensions/sdktools/extension.cpp
public/extensions/ISDKTools.h
     1.1 --- a/extensions/sdktools/extension.cpp	Fri Nov 19 15:52:41 2010 -0500
     1.2 +++ b/extensions/sdktools/extension.cpp	Fri Nov 19 23:02:27 2010 -0500
     1.3 @@ -441,6 +441,14 @@
     1.4  	{
     1.5  		return iserver;
     1.6  	}
     1.7 +	
     1.8 +	virtual void *GetGameRules()
     1.9 +	{
    1.10 +		if (!g_pGameRules)
    1.11 +			return NULL;
    1.12 +		
    1.13 +		return *g_pGameRules;
    1.14 +	}
    1.15  } g_SDKTools_API;
    1.16  
    1.17  static void InitSDKToolsAPI()
     2.1 --- a/public/extensions/ISDKTools.h	Fri Nov 19 15:52:41 2010 -0500
     2.2 +++ b/public/extensions/ISDKTools.h	Fri Nov 19 23:02:27 2010 -0500
     2.3 @@ -35,7 +35,7 @@
     2.4  #include <IShareSys.h>
     2.5  
     2.6  #define SMINTERFACE_SDKTOOLS_NAME		"ISDKTools"
     2.7 -#define SMINTERFACE_SDKTOOLS_VERSION	1
     2.8 +#define SMINTERFACE_SDKTOOLS_VERSION	2
     2.9  
    2.10  class IServer;
    2.11  
    2.12 @@ -61,6 +61,13 @@
    2.13  		 * @return			IServer pointer, or NULL if SDKTools was unable to find one.
    2.14  		 */
    2.15  		virtual IServer* GetIServer() = 0;
    2.16 +		
    2.17 +		/**
    2.18 +		 * @brief Returns a pointer to game's CGameRules class.
    2.19 +		 *
    2.20 +		 * @return			CGameRules pointer or NULL if not found.
    2.21 +		 */
    2.22 +		virtual void* GetGameRules() = 0;
    2.23  	};
    2.24  }
    2.25