From 3bf9df6b2785fa6d951086978a3e66f49427166a Mon Sep 17 00:00:00 2001 From: FluorescentCIAAfricanAmerican <0934gj3049fk@protonmail.com> Date: Wed, 22 Apr 2020 12:56:21 -0400 Subject: 1 --- engine/randomstream.cpp | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 engine/randomstream.cpp (limited to 'engine/randomstream.cpp') diff --git a/engine/randomstream.cpp b/engine/randomstream.cpp new file mode 100644 index 0000000..7318e6e --- /dev/null +++ b/engine/randomstream.cpp @@ -0,0 +1,48 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +// Purpose: random steam class +// +//===========================================================================// + +#include +#include +#include "cdll_int.h" + +// memdbgon must be the last include file in a .cpp file!!! +#include "tier0/memdbgon.h" + +//----------------------------------------------------------------------------- +// +// implementation of IUniformRandomStream +// +//----------------------------------------------------------------------------- +class CEngineUniformRandomStream : public IUniformRandomStream +{ +public: + // Sets the seed of the random number generator + void SetSeed( int iSeed ) + { + // Never call this from the client or game! + Assert(0); + } + + // Generates random numbers + float RandomFloat( float flMinVal = 0.0f, float flMaxVal = 1.0f ) + { + return ::RandomFloat( flMinVal, flMaxVal ); + } + + float RandomFloatExp( float flMinVal = 0.0f, float flMaxVal = 1.0f, float flExponent = 1.0f ) + { + return ::RandomFloatExp( flMinVal, flMaxVal, flExponent ); + } + + int RandomInt( int iMinVal, int iMaxVal ) + { + return ::RandomInt( iMinVal, iMaxVal ); + } +}; + +static CEngineUniformRandomStream s_EngineRandomStream; +EXPOSE_SINGLE_INTERFACE_GLOBALVAR( CEngineUniformRandomStream, IUniformRandomStream, + VENGINE_CLIENT_RANDOM_INTERFACE_VERSION, s_EngineRandomStream ); -- cgit v1.2.3