t7x/src/client/steam/interfaces/user_stats.hpp
2022-05-21 12:11:10 +02:00

66 lines
4.3 KiB
C++

#pragma once
namespace steam
{
class user_stats
{
public:
~user_stats() = default;
virtual bool RequestCurrentStats();
virtual bool GetStat(const char* pchName, int* pData);
virtual bool GetStat(const char* pchName, float* pData);
virtual bool SetStat(const char* pchName, int nData);
virtual bool SetStat(const char* pchName, float fData);
virtual bool UpdateAvgRateStat(const char* pchName, float flCountThisSession, double dSessionLength);
virtual bool GetAchievement(const char* pchName, bool* pbAchieved);
virtual bool SetAchievement(const char* pchName);
virtual bool ClearAchievement(const char* pchName);
virtual bool GetAchievementAndUnlockTime(const char* pchName, bool* pbAchieved, unsigned int* punUnlockTime);
virtual bool StoreStats();
virtual int GetAchievementIcon(const char* pchName);
virtual const char* GetAchievementDisplayAttribute(const char* pchName, const char* pchKey);
virtual bool IndicateAchievementProgress(const char* pchName, unsigned int nCurProgress,
unsigned int nMaxProgress);
virtual unsigned int GetNumAchievements();
virtual const char* GetAchievementName(unsigned int iAchievement);
virtual unsigned long long RequestUserStats(steam_id steamIDUser);
virtual bool GetUserStat(steam_id steamIDUser, const char* pchName, int* pData);
virtual bool GetUserStat(steam_id steamIDUser, const char* pchName, float* pData);
virtual bool GetUserAchievement(steam_id steamIDUser, const char* pchName, bool* pbAchieved);
virtual bool GetUserAchievementAndUnlockTime(steam_id steamIDUser, const char* pchName, bool* pbAchieved,
unsigned int* punUnlockTime);
virtual bool ResetAllStats(bool bAchievementsToo);
virtual unsigned long long FindOrCreateLeaderboard(const char* pchLeaderboardName, int eLeaderboardSortMethod,
int eLeaderboardDisplayType);
virtual unsigned long long FindLeaderboard(const char* pchLeaderboardName);
virtual const char* GetLeaderboardName(unsigned long long hSteamLeaderboard);
virtual int GetLeaderboardEntryCount(unsigned long long hSteamLeaderboard);
virtual int GetLeaderboardSortMethod(unsigned long long hSteamLeaderboard);
virtual int GetLeaderboardDisplayType(unsigned long long hSteamLeaderboard);
virtual unsigned long long DownloadLeaderboardEntries(unsigned long long hSteamLeaderboard,
int eLeaderboardDataRequest, int nRangeStart,
int nRangeEnd);
virtual unsigned long long DownloadLeaderboardEntriesForUsers(unsigned long long hSteamLeaderboard,
steam_id* prgUsers, int cUsers);
virtual bool GetDownloadedLeaderboardEntry(unsigned long long hSteamLeaderboardEntries, int index,
int* pLeaderboardEntry, int* pDetails, int cDetailsMax);
virtual unsigned long long UploadLeaderboardScore(unsigned long long hSteamLeaderboard,
int eLeaderboardUploadScoreMethod, int nScore,
const int* pScoreDetails, int cScoreDetailsCount);
virtual unsigned long long AttachLeaderboardUGC(unsigned long long hSteamLeaderboard, unsigned long long hUGC);
virtual unsigned long long GetNumberOfCurrentPlayers();
virtual unsigned long long RequestGlobalAchievementPercentages();
virtual int GetMostAchievedAchievementInfo(char* pchName, unsigned int unNameBufLen, float* pflPercent,
bool* pbAchieved);
virtual int GetNextMostAchievedAchievementInfo(int iIteratorPrevious, char* pchName, unsigned int unNameBufLen,
float* pflPercent, bool* pbAchieved);
virtual bool GetAchievementAchievedPercent(const char* pchName, float* pflPercent);
virtual unsigned long long RequestGlobalStats(int nHistoryDays);
virtual bool GetGlobalStat(const char* pchStatName, long long* pData);
virtual bool GetGlobalStat(const char* pchStatName, double* pData);
virtual int GetGlobalStatHistory(const char* pchStatName, long long* pData, unsigned int cubData);
virtual int GetGlobalStatHistory(const char* pchStatName, double* pData, unsigned int cubData);
};
}