50 lines
		
	
	
		
			877 B
		
	
	
	
		
			SourcePawn
		
	
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			877 B
		
	
	
	
		
			SourcePawn
		
	
	
	
	
	
#if defined _serverfps_included
 | 
						|
  #endinput
 | 
						|
#endif
 | 
						|
#define _serverfps_included
 | 
						|
 | 
						|
#include <sourcemod>
 | 
						|
#include <sdktools>
 | 
						|
 | 
						|
stock float GetServerFPS()
 | 
						|
{
 | 
						|
	return 1.0 / view_as<float>(LoadFromAddress(GetHostTimeFrame(), NumberType_Int32));
 | 
						|
}
 | 
						|
 | 
						|
/*
 | 
						|
* Internal Functions
 | 
						|
*/
 | 
						|
stock Handle GetServerFPSConf()
 | 
						|
{
 | 
						|
	static Handle hGameConf = null;
 | 
						|
 | 
						|
	if (hGameConf == null)
 | 
						|
	{
 | 
						|
		hGameConf = LoadGameConfigFile("serverfps.games");
 | 
						|
 | 
						|
		if (hGameConf == null)
 | 
						|
		{
 | 
						|
			SetFailState("Couldn't find \"serverfps.games\" configuration file");
 | 
						|
		}
 | 
						|
	}
 | 
						|
 | 
						|
	return hGameConf;
 | 
						|
}
 | 
						|
 | 
						|
stock Address GetHostTimeFrame()
 | 
						|
{
 | 
						|
	static Address pHostTimeFrame = Address_Null;
 | 
						|
 | 
						|
	if (pHostTimeFrame == Address_Null)
 | 
						|
	{
 | 
						|
		pHostTimeFrame = GameConfGetAddress(GetServerFPSConf(), "HostTimeFrame");
 | 
						|
 | 
						|
		if (pHostTimeFrame == Address_Null)
 | 
						|
		{
 | 
						|
			SetFailState("Failed to find time frame address");
 | 
						|
		}
 | 
						|
	}
 | 
						|
 | 
						|
	return pHostTimeFrame;
 | 
						|
}
 |