//========= Copyright Valve Corporation, All rights reserved. ============// // // Purpose: Code for the CEconGameAccount object // // $NoKeywords: $ //=============================================================================// #include "cbase.h" #include "econ_game_account_server.h" using namespace GCSDK; #ifdef GC_DLL //--------------------------------------------------------------------------------- // Purpose: //--------------------------------------------------------------------------------- IMPLEMENT_CLASS_MEMPOOL( CEconGameServerAccount, 100, UTLMEMORYPOOL_GROW_SLOW ); void GameServerAccount_GenerateIdentityToken( char* pIdentityToken, uint32 unMaxChars ) { static const char s_ValidChars[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890./+!$%^-_+?<>()&~:"; const int nLastValidIndex = ARRAYSIZE(s_ValidChars) - 2; // last = size - 1, minus another one for null terminator // create a randomized token for ( uint32 i = 0; i < unMaxChars - 1; ++i ) { pIdentityToken[i] = s_ValidChars[ RandomInt( 0, nLastValidIndex ) ]; } pIdentityToken[unMaxChars - 1] = 0; } //--------------------------------------------------------------------------------- // Purpose: Selective account-level data for game servers //--------------------------------------------------------------------------------- IMPLEMENT_CLASS_MEMPOOL( CEconGameAccountForGameServers, 10 * 1000, UTLMEMORYPOOL_GROW_SLOW ); #endif // memdbgon must be the last include file in a .cpp file!!! #include "tier0/memdbgon.h"