--- /dev/null
+#ifndef VG_STEAM_USER_STATS_H
+#define VG_STEAM_USER_STATS_H
+
+#include "vg_steam.h"
+
+#if defined( VALVE_CALLBACK_PACK_SMALL )
+ #pragma pack( push, 4 )
+#elif defined( VALVE_CALLBACK_PACK_LARGE )
+ #pragma pack( push, 8 )
+#endif
+
+typedef struct UserStatsReceived_t UserStatsReceived_t;
+struct UserStatsReceived_t
+{
+ u64 m_nGameID; // Game these stats are for
+ EResult m_eResult; // Success / error fetching the stats
+ CSteamID m_steamIDUser; // The user for whom the stats are retrieved for
+};
+enum { k_iUserStatsReceived = k_iSteamUserStatsCallbacks + 1 };
+
+#pragma pack(pop)
+
+typedef void ISteamUserStats;
+ISteamUserStats *SteamAPI_SteamUserStats_v012(void);
+ISteamUserStats *SteamAPI_SteamUserStats(void)
+{
+ return SteamAPI_SteamUserStats_v012();
+}
+
+int SteamAPI_ISteamUserStats_RequestCurrentStats( ISteamUserStats* self );
+
+int SteamAPI_ISteamUserStats_GetAchievement( ISteamUserStats *self,
+ const char *pchName,
+ int *pbAchieved );
+
+int SteamAPI_ISteamUserStats_SetAchievement( ISteamUserStats *self,
+ const char *pchName );
+
+int SteamAPI_ISteamUserStats_ClearAchievement( ISteamUserStats *self,
+ const char *pchName );
+
+int SteamAPI_ISteamUserStats_StoreStats( ISteamUserStats* self );
+
+#endif /* VG_STEAM_USER_STATS_H */