Counter Strike : Global Offensive Source Code
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

56 lines
2.0 KiB

//========= Copyright (c), Valve LLC, All rights reserved. ============
//
// Purpose: API to interact with Steam leaderboards on the GC.
//
// $NoKeywords: $
//=============================================================================
#ifndef GCLEADERBOARDAPI_H
#define GCLEADERBOARDAPI_H
namespace GCSDK
{
class CGCBase;
/**
* Yielding call that attempts to find a leaderboard by name, creating one if necessary.
* @param pName
* @param eLeaderboardSortMethod
* @param eLeaderboardDisplayType
* @param bCreateIfNotFound
* @return 0 if the leaderboard was not found, > 0 otherwise
*/
uint32 Leaderboard_YieldingFind( const char *pName, ELeaderboardSortMethod eLeaderboardSortMethod, ELeaderboardDisplayType eLeaderboardDisplayType, bool bCreateIfNotFound );
/**
* Yielding call that attempts to set the score for the steamID in the leaderboard.
* @param unLeaderboardID
* @param steamID
* @param eLeaderboardUploadScoreMethod
* @param score
* @param pDetails
* @param unDetailsLength
* @return true if successful, false otherwise.
*/
bool Leaderboard_YieldingSetScore( uint32 unLeaderboardID, const CSteamID &steamID, ELeaderboardUploadScoreMethod eLeaderboardUploadScoreMethod, int score, uint8* pDetails = 0, uint32 unDetailsLength = 0 );
/**
* @param pKVOutput
* @return true if successful, false otherwise.
*/
bool Leaderboard_YieldingGetLeaderboardsForGame( KeyValuesAD* pKVOutput );
/**
* Yielding call that attempts to get leaderboard entries by leaderboard name
* @param unRangeStart
* @param unRangeEnd
* @param pSteamID
* @param unLeaderboardID
* @param eDataRequestType
* @param pKVOutput
* @return number of entries found from specified range.
*/
bool Leaderbaord_YieldingGetLeaderboardEntries( int32 nRangeStart, int32 nRangeEnd, CSteamID* pSteamID, int32 unLeaderboardID, ELeaderboardDataRequest eDataRequestType, KeyValuesAD* pKVOutput );
}; // namespace GCSDK
#endif // GCLEADERBOARDAPI_H