diff --git a/BlitzSteam.decls b/BlitzSteam.decls
index 3dbc239..ecfe3df 100644
--- a/BlitzSteam.decls
+++ b/BlitzSteam.decls
@@ -1,112 +1,75 @@
-; Native SteamAPI
-.lib "steam_api.dll"
-; SteamAPI
-SteamAPI_Init%()
-SteamAPI_InitSafe%()
-SteamAPI_IsSteamRunning%()
-SteamAPI_RestartAppIfNecessary%(unOwnAppID%)
-SteamAPI_WriteMiniDump(uStructuredExceptionCode%, pvExceptionInfo*, uBuildID%)
-SteamAPI_SetMiniDumpComment(pchMsg$)
-SteamAPI_Shutdown()
-SteamClient%()
-SteamUser%()
-SteamFriends%()
-SteamUtils%()
-SteamMatchmaking%()
-SteamUserStats%()
-SteamApps%()
-SteamNetworking%()
-SteamMatchmakingServers%()
-SteamRemoteStorage%()
-SteamScreenshots%()
-SteamHTTP%()
-SteamUnifiedMessages%()
-SteamController%()
-SteamUGC%()
-SteamAppList%()
-SteamMusic%()
-SteamMusicRemote%()
-SteamHTMLSurface%()
-SteamInventory%()
-SteamVideo%()
-SteamAPI_RunCallbacks()
-; SteamAPI-Callbacks
-SteamAPI_RegisterCallback(pCallback%, iCallback%)
-SteamAPI_UnregisterCallback(pCallback%)
-SteamAPI_RegisterCallResult(pCallback%, hAPICall%)
-SteamAPI_UnregisterCallResult(pCallback%, hAPICall%)
-
-; ISteamClient
-SteamAPI_ISteamClient_CreateSteamPipe%(lpSteamClient%)
-SteamAPI_ISteamClient_BReleaseSteamPipe%(lpSteamClient%, hSteamPipe%)
-SteamAPI_ISteamClient_ConnectToGlobalUser%(lpSteamClient%, hSteamPipe%)
-SteamAPI_ISteamClient_CreateLocalUser%(lpSteamClient%, phSteamPipe%, eAccountType%)
-SteamAPI_ISteamClient_ReleaseUser(lpSteamClient%, hSteamPipe%, hUser%)
-SteamAPI_ISteamClient_GetISteamUser%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamGameServer%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_SetLocalIPBinding(lpSteamClient%, unIP%, usPort%)
-SteamAPI_ISteamClient_GetISteamFriends%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamUtils%(lpSteamClient%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamMatchmaking%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamMatchmakingServers%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamGenericInterface%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamUserStats%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamGameServerStats%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamApps%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamNetworking%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamRemoteStorage%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamScreenshots%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_RunFrame(lpSteamClient%)
-SteamAPI_ISteamClient_GetIPCCallCount%(lpSteamClient%)
-SteamAPI_ISteamClient_BShutdownIfAllPipesClosed%(lpSteamClient%)
-SteamAPI_ISteamClient_GetISteamHTTP%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamUnifiedMessages%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamController%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamUGC%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamAppList%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamMusic%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamMusicRemote%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamHTMLSurface%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamInventory%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-SteamAPI_ISteamClient_GetISteamVideo%(lpSteamClient%, hSteamUser%, hSteamPipe%, pchVersion$)
-; ISteamClient-Callbacks
-;SteamAPI_ISteamClient_SetWarningMessageHook(lpSteamClient%, SteamAPIWarningMessageHook_t%)
-;SteamAPI_ISteamClient_Set_SteamAPI_CPostAPIResultInProcess(lpSteamClient%, SteamAPI_PostAPIResultInProcess_t%)
-;SteamAPI_ISteamClient_Remove_SteamAPI_CPostAPIResultInProcess(lpSteamClient%, SteamAPI_PostAPIResultInProcess_t%)
-;SteamAPI_ISteamClient_Set_SteamAPI_CCheckCallbackRegisteredInProcess(lpSteamClient%, SteamAPI_CheckCallbackRegistered_t%)
-
-; ISteamUser
-SteamAPI_ISteamUser_GetHSteamUser%(lpSteamUser%)
-SteamAPI_ISteamUser_BLoggedOn%(lpSteamUser%)
-;Wrapped: uint64 SteamAPI_ISteamUser_GetSteamID(lpSteamUser%)
-SteamAPI_ISteamUser_InitiateGameConnection%(lpSteamUser%, pAuthBlob*, cbMaxAuthBlob%, steamIDGameServer%, unIPServer%, usPortServer%, bSecure%)
-SteamAPI_ISteamUser_TerminateGameConnection(lpSteamUser%, unIPServer%, usPortServer%)
-SteamAPI_ISteamUser_TrackAppUsageEvent(lpSteamUser%, gameID%, eAppUsageEvent%, pchExtraInfo$)
-SteamAPI_ISteamUser_GetUserDataFolder%(lpSteamUser%, pchBuffer$, cubBuffer%)
-SteamAPI_ISteamUser_StartVoiceRecording(lpSteamUser%)
-SteamAPI_ISteamUser_StopVoiceRecording(lpSteamUser%)
-SteamAPI_ISteamUser_GetAvailableVoice%(lpSteamUser%, pcbCompressed*, pcbUncompressed*, nUncompressedVoiceDesiredSampleRate%)
-SteamAPI_ISteamUser_GetVoice%(lpSteamUser%, bWantCompressed%, pDestBuffer*, cbDestBufferSize%, nBytesWritten*, bWantUncompressed%, pUncompressedDestBuffer*, cbUncompressedDestBufferSize%, nUncompressBytesWritten*, nUncompressedVoiceDesiredSampleRate%)
-SteamAPI_ISteamUser_DecompressVoice%(lpSteamUser%, pCompressed*, cbCompressed%, pDestBuffer*, cbDestBufferSize%, nBytesWritten*, nDesiredSampleRate%)
-SteamAPI_ISteamUser_GetVoiceOptimalSampleRate%(lpSteamUser%)
-SteamAPI_ISteamUser_GetAuthSessionTicket%(lpSteamUser%, pTicket%, cbMaxTicket%, pcbTicket*)
-SteamAPI_ISteamUser_BeginAuthSession%(lpSteamUser%, pAuthTicket%, cbAuthTicket%, steamID%)
-SteamAPI_ISteamUser_EndAuthSession(lpSteamUser%, steamID%)
-SteamAPI_ISteamUser_CancelAuthTicket(lpSteamUser%, hAuthTicket%)
-SteamAPI_ISteamUser_UserHasLicenseForApp%(lpSteamUser%, steamID%, appID%)
-SteamAPI_ISteamUser_BIsBehindNAT%(lpSteamUser%)
-SteamAPI_ISteamUser_AdvertiseGame(lpSteamUser%, steamIDGameServer%, unIPServer%, usPortServer%)
-;SteamAPICall_t SteamAPI_ISteamUser_RequestEncryptedAppTicket(lpSteamUser%, pDataToInclude%, cbDataToInclude%)
-SteamAPI_ISteamUser_GetEncryptedAppTicket%(lpSteamUser%, pTicket%, cbMaxTicket%, pcbTicket%)
-SteamAPI_ISteamUser_GetGameBadgeLevel%(lpSteamUser%, nSeries%, bFoil%)
-SteamAPI_ISteamUser_GetPlayerSteamLevel%(lpSteamUser%)
-;SteamAPICall_t SteamAPI_ISteamUser_RequestStoreAuthURL(lpSteamUser%, pchRedirectURL$)
-
-; Wrapped SteamAPI
.lib "BlitzSteam.dll"
-; SteamAPI Callback Support
-BlitzSteam_CreateCallback%(fpFunctionPointer%)
-BlitzSteam_DestroyCallback(lpCallback%)
+; Steam -------------------------------------------------------------------------
+BlitzSteam_Init%()
+BlitzSteam_Shutdown()
+BlitzSteam_IsSteamRunning%()
+BlitzSteam_RestartAppIfNecessary%(unOwnAppID%)
+BlitzSteam_SetMiniDumpComment(pchMsg$)
+BlitzSteam_WriteMiniDump(uStructuredExceptionCode%, pvExceptionInfo%, uBuildID%)
+BlitzSteam_WriteMiniDumpBank(uStructuredExceptionCode%, pvExceptionInfo*, uBuildID%) : "BlitzSteam_WriteMiniDump"
+; -- Callbacks & Hooks
+BlitzSteam_RunCallbacks()
+BlitzSteam_RegisterCallback(pCallback%, iCallback%)
+BlitzSteam_UnregisterCallback(pCallback%)
+BlitzSteam_RegisterCallResult(pCallback%, hAPICall_L%, hAPICall_R%)
+BlitzSteam_UnregisterCallResult(pCallback%, hAPICall_L%, hAPICall_R%)
+; -- Interfaces
+BlitzSteamClient%()
+BlitzSteamUser%()
+BlitzSteamFriends%()
+BlitzSteamUtils%()
+BlitzSteamMatchmaking%()
+BlitzSteamUserStats%()
+BlitzSteamApps%()
+BlitzSteamNetworking%()
+BlitzSteamMatchmakingServers%()
+BlitzSteamRemoteStorage%()
+BlitzSteamScreenshots%()
+BlitzSteamHTTP%()
+BlitzSteamUnifiedMessages%()
+BlitzSteamController%()
+BlitzSteamUGC%()
+BlitzSteamAppList%()
+BlitzSteamMusic%()
+BlitzSteamMusicRemote%()
+BlitzSteamHTMLSurface%()
+BlitzSteamInventory%()
+BlitzSteamVideo%()
-;ISteamUser
-BlitzSteam_ISteamUser_GetSteamID%(lpSteamUser%)
\ No newline at end of file
+; SteamAppList ------------------------------------------------------------------
+BlitzSteamAppList_GetNumInstalledApps%(lpSteamAppList%)
+BlitzSteamAppList_GetInstalledApps%(lpSteamAppList%, pvecAppID%, unMaxIDs%)
+BlitzSteamAppList_GetInstalledAppsBank%(lpSteamAppList%, pvecAppID*, unMaxIDs%) : "BlitzSteamAppList_GetInstalledApps"
+BlitzSteamAppList_GetAppName%(lpSteamAppList%, nAppId%, pchName%, cchNameMax%)
+BlitzSteamAppList_GetAppNameBank%(lpSteamAppList%, nAppId%, pchName*, cchNameMax%) : "BlitzSteamAppList_GetAppName"
+BlitzSteamAppList_GetAppInstallDir%(lpSteamAppList%, nAppId%, pchDirectory%, cchDirectoryMax%)
+BlitzSteamAppList_GetAppInstallDirBank%(lpSteamAppList%, nAppId%, pchDirectory*, cchDirectoryMax%) : "BlitzSteamAppList_GetAppInstallDir"
+BlitzSteamAppList_GetAppBuildId%(lpSteamAppList%, nAppId%)
+
+; SteamApps ---------------------------------------------------------------------
+BlitzSteamApps_IsSubscribed%(lpSteamApps%)
+BlitzSteamApps_IsLowViolence%(lpSteamApps%)
+BlitzSteamApps_IsCybercafe%(lpSteamApps%)
+BlitzSteamApps_IsVACBanned%(lpSteamApps%)
+BlitzSteamApps_GetCurrentGameLanguage$(lpSteamApps%)
+BlitzSteamApps_GetAvailableGameLanguages$(lpSteamApps%)
+BlitzSteamApps_IsSubscribedApp%(lpSteamApps%, appID%)
+BlitzSteamApps_IsDlcInstalled%(lpSteamApps%, appID%)
+BlitzSteamApps_GetEarliestPurchaseUnixTime%(lpSteamApps%, appID%)
+BlitzSteamApps_IsSubscribedFromFreeWeekend%(lpSteamApps%)
+BlitzSteamApps_GetDLCDataByIndexEx%(lpSteamApps%, iDLC%, pAppId%, pbAvailable%, pchName%, cchNameBufferSize%) : "BlitzSteamApps_GetDLCDataByIndex"
+BlitzSteamApps_GetDLCDataByIndex%(lpSteamApps%, iDLC%, pAppId%, pbAvailable*, pchName*, cchNameBufferSize%)
+BlitzSteamApps_InstallDLC(lpSteamApps%, nAppID%)
+BlitzSteamApps_UninstallDLC(lpSteamApps%, nAppID%)
+BlitzSteamApps_RequestAppProofOfPurchaseKey(lpSteamApps%, nAppID%)
+BlitzSteamApps_GetCurrentBetaNameEx%(lpSteamApps%, pchName%, cchNameBufferSize%) : "BlitzSteamApps_GetCurrentBetaName"
+BlitzSteamApps_GetCurrentBetaName%(lpSteamApps%, pchName*, cchNameBufferSize%)
+BlitzSteamApps_MarkContentCorrupt%(lpSteamApps%, bMissingFilesOnly%)
+BlitzSteamApps_GetInstalledDepotsEx%(lpSteamApps%, nAppID%, pvecDepots%, cMaxDepots%) : "BlitzSteamApps_GetInstalledDepots"
+BlitzSteamApps_GetInstalledDepots%(lpSteamApps%, nAppID%, pvecDepots%, cMaxDepots%)
+BlitzSteamApps_GetAppOwner%(lpSteamApps%)
+BlitzSteamApps_GetLaunchQueryParam$(lpSteamApps%, pchKey$)
+BlitzSteamApps_GetDlcDownloadProgress%(lpSteamApps%, nAppID%, pOutputBank*)
+BlitzSteamApps_GetAppBuildId%(lpSteamApps%)
+
+; SteamController ---------------------------------------------------------------
diff --git a/BlitzSteam.vcxproj b/BlitzSteam.vcxproj
index e6d4c1f..741344a 100644
--- a/BlitzSteam.vcxproj
+++ b/BlitzSteam.vcxproj
@@ -137,9 +137,13 @@
+
+
+
+
@@ -155,6 +159,10 @@
BlitzSteam.decls
PreserveNewest
+
+ steam_api.dll
+ PreserveNewest
+
diff --git a/BlitzSteam.vcxproj.filters b/BlitzSteam.vcxproj.filters
index 1c898e0..81b31ce 100644
--- a/BlitzSteam.vcxproj.filters
+++ b/BlitzSteam.vcxproj.filters
@@ -31,6 +31,18 @@
Source Files\Libraries
+
+ Source Files
+
+
+ Source Files\Wrapper
+
+
+ Source Files\Wrapper
+
+
+ Source Files\Wrapper
+
diff --git a/Helper.cpp b/Helper.cpp
new file mode 100644
index 0000000..a668e25
--- /dev/null
+++ b/Helper.cpp
@@ -0,0 +1,35 @@
+#include "dllmain.h"
+#include "Libraries/BlitzPointer.h"
+
+// Callbacks
+class BlitzSteamCallback : CCallbackBase {
+ public:
+ uint32_t blitzFunctionPointer;
+
+ virtual void Run(void *pvParam) {
+ BlitzPointer_CallFunction4((uint32_t)blitzFunctionPointer, (uint32_t)pvParam, 0, 0, 0);
+ }
+
+ virtual void Run(void *pvParam, bool bIOFailure, SteamAPICall_t hSteamAPICall) {
+ BlitzPointer_CallFunction4((uint32_t)blitzFunctionPointer, (uint32_t)pvParam, bIOFailure, (uint32_t)(hSteamAPICall & 0xFFFFFFFF), (uint32_t)(hSteamAPICall >> 32));
+ }
+
+ virtual int GetCallbackSizeBytes() {
+ return sizeof(BlitzSteamCallback);
+ }
+};
+
+DLL_EXPORT void* BlitzSteam_CreateCallback(uint32_t fpFunctionPointer) {
+ BlitzSteamCallback* lpBSCallback = new BlitzSteamCallback();
+ lpBSCallback->blitzFunctionPointer = fpFunctionPointer;
+ return lpBSCallback;
+}
+#pragma comment(linker, "/EXPORT:BlitzSteam_CreateCallback=_BlitzSteam_CreateCallback@4")
+
+DLL_EXPORT void BlitzSteam_DestroyCallback(uint32_t lpCallback) {
+ BlitzSteamCallback* lpBSCallback = (BlitzSteamCallback*)lpCallback;
+ if (lpBSCallback != nullptr) {
+ delete lpBSCallback;
+ }
+}
+#pragma comment(linker, "/EXPORT:BlitzSteam_DestroyCallback=_BlitzSteam_DestroyCallback@4")
\ No newline at end of file
diff --git a/Wrapper/Steam.cpp b/Wrapper/Steam.cpp
index 56507c6..5ca0958 100644
--- a/Wrapper/Steam.cpp
+++ b/Wrapper/Steam.cpp
@@ -1,32 +1,163 @@
#include "dllmain.h"
-#include "Libraries\BlitzPointer.h"
-class BlitzSteamCallback : CCallbackBase {
-public:
- uint32_t blitzFunctionPointer;
-
- virtual void Run(void *pvParam) {
- BlitzPointer_CallFunction1((uint32_t)blitzFunctionPointer, (uint32_t)pvParam);
- }
-
- virtual void Run(void *pvParam, bool bIOFailure, SteamAPICall_t hSteamAPICall) {
- BlitzPointer_CallFunction4((uint32_t)blitzFunctionPointer, (uint32_t)pvParam, bIOFailure, (uint32_t)(hSteamAPICall & 0xFFFFFFFF), (uint32_t)(hSteamAPICall >> 32));
- }
-
- virtual int GetCallbackSizeBytes() {
- return sizeof(BlitzSteamCallback);
- }
-};
-
-DLL_EXPORT void* BlitzSteam_CreateCallback(uint32_t fpFunctionPointer) {
- BlitzSteamCallback* lpBSCallback = new BlitzSteamCallback();
- lpBSCallback->blitzFunctionPointer = fpFunctionPointer;
- return lpBSCallback;
+DLL_EXPORT uint32_t BlitzSteam_Init() {
+ return SteamAPI_Init();
}
+#pragma comment(linker, "/EXPORT:BlitzSteam_Init=_BlitzSteam_Init@0")
-DLL_EXPORT void BlitzSteam_DestroyCallback(uint32_t lpCallback) {
- BlitzSteamCallback* lpBSCallback = (BlitzSteamCallback*)lpCallback;
- if (lpBSCallback != nullptr) {
- delete lpBSCallback;
- }
-}
\ No newline at end of file
+DLL_EXPORT void BlitzSteam_Shutdown() {
+ SteamAPI_Shutdown();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteam_Shutdown=_BlitzSteam_Shutdown@0")
+
+DLL_EXPORT uint32_t BlitzSteam_IsSteamRunning() {
+ return SteamAPI_IsSteamRunning();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteam_IsSteamRunning=_BlitzSteam_IsSteamRunning@0")
+
+DLL_EXPORT uint32_t BlitzSteam_RestartAppIfNecessary(uint32 unOwnAppID) {
+ return SteamAPI_RestartAppIfNecessary(unOwnAppID);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteam_RestartAppIfNecessary=_BlitzSteam_RestartAppIfNecessary@4")
+
+DLL_EXPORT void BlitzSteam_SetMiniDumpComment(const char* pchMsg) {
+ SteamAPI_SetMiniDumpComment(pchMsg);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteam_SetMiniDumpComment=_BlitzSteam_SetMiniDumpComment@4")
+
+DLL_EXPORT void BlitzSteam_WriteMiniDump(uint32_t uStructuredExceptionCode, void* pvExceptionInfo, uint32 uBuildID) {
+ SteamAPI_WriteMiniDump(uStructuredExceptionCode, pvExceptionInfo, uBuildID);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteam_WriteMiniDump=_BlitzSteam_WriteMiniDump@12")
+
+// Callbacks & Hooks
+DLL_EXPORT void BlitzSteam_RunCallbacks() {
+ SteamAPI_RunCallbacks();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteam_RunCallbacks=_BlitzSteam_RunCallbacks@0")
+
+DLL_EXPORT void BlitzSteam_RegisterCallback(class CCallbackBase *pCallback, int iCallback) {
+ SteamAPI_RegisterCallback(pCallback, iCallback);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteam_RegisterCallback=_BlitzSteam_RegisterCallback@8")
+
+DLL_EXPORT void BlitzSteam_UnregisterCallback(class CCallbackBase *pCallback) {
+ SteamAPI_UnregisterCallback(pCallback);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteam_UnregisterCallback=_BlitzSteam_UnregisterCallback@4")
+
+DLL_EXPORT void BlitzSteam_RegisterCallResult(class CCallbackBase *pCallback, uint32_t hAPICall_L, uint32_t hAPICall_R) {
+ SteamAPI_RegisterCallResult(pCallback, ((uint64_t)hAPICall_L << 32) + (uint64_t)hAPICall_R);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteam_RegisterCallResult=_BlitzSteam_RegisterCallResult@12")
+
+DLL_EXPORT void BlitzSteam_UnregisterCallResult(class CCallbackBase *pCallback, uint32_t hAPICall_L, uint32_t hAPICall_R) {
+ SteamAPI_UnregisterCallResult(pCallback, ((uint64_t)hAPICall_L << 32) + (uint64_t)hAPICall_R);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteam_UnregisterCallResult=_BlitzSteam_UnregisterCallResult@12")
+
+// Interface Pointers, configured by SteamAPI_Init().
+DLL_EXPORT ISteamClient* BlitzSteamClient() {
+ return SteamClient();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient=_BlitzSteamClient@0")
+
+DLL_EXPORT ISteamUser* BlitzSteamUser() {
+ return SteamUser();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamUser=_BlitzSteamUser@0")
+
+DLL_EXPORT ISteamFriends* BlitzSteamFriends() {
+ return SteamFriends();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamFriends=_BlitzSteamFriends@0")
+
+DLL_EXPORT ISteamUtils* BlitzSteamUtils() {
+ return SteamUtils();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamUtils=_BlitzSteamUtils@0")
+
+DLL_EXPORT ISteamMatchmaking* BlitzSteamMatchmaking() {
+ return SteamMatchmaking();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamMatchmaking=_BlitzSteamMatchmaking@0")
+
+DLL_EXPORT ISteamUserStats* BlitzSteamUserStats() {
+ return SteamUserStats();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamUserStats=_BlitzSteamUserStats@0")
+
+DLL_EXPORT ISteamApps* BlitzSteamApps() {
+ return SteamApps();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps=_BlitzSteamApps@0")
+
+DLL_EXPORT ISteamNetworking* BlitzSteamNetworking() {
+ return SteamNetworking();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamNetworking=_BlitzSteamNetworking@0")
+
+DLL_EXPORT ISteamMatchmakingServers* BlitzSteamMatchmakingServers() {
+ return SteamMatchmakingServers();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamMatchmakingServers=_BlitzSteamMatchmakingServers@0")
+
+DLL_EXPORT ISteamRemoteStorage* BlitzSteamRemoteStorage() {
+ return SteamRemoteStorage();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamRemoteStorage=_BlitzSteamRemoteStorage@0")
+
+DLL_EXPORT ISteamScreenshots* BlitzSteamScreenshots() {
+ return SteamScreenshots();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamScreenshots=_BlitzSteamScreenshots@0")
+
+DLL_EXPORT ISteamHTTP* BlitzSteamHTTP() {
+ return SteamHTTP();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamHTTP=_BlitzSteamHTTP@0")
+
+DLL_EXPORT ISteamUnifiedMessages* BlitzSteamUnifiedMessages() {
+ return SteamUnifiedMessages();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamUnifiedMessages=_BlitzSteamUnifiedMessages@0")
+
+DLL_EXPORT ISteamController* BlitzSteamController() {
+ return SteamController();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamController=_BlitzSteamController@0")
+
+DLL_EXPORT ISteamUGC* BlitzSteamUGC() {
+ return SteamUGC();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamUGC=_BlitzSteamUGC@0")
+
+DLL_EXPORT ISteamAppList* BlitzSteamAppList() {
+ return SteamAppList();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamAppList=_BlitzSteamAppList@0")
+
+DLL_EXPORT ISteamMusic* BlitzSteamMusic() {
+ return SteamMusic();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamMusic=_BlitzSteamMusic@0")
+
+DLL_EXPORT ISteamMusicRemote* BlitzSteamMusicRemote() {
+ return SteamMusicRemote();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamMusicRemote=_BlitzSteamMusicRemote@0")
+
+DLL_EXPORT ISteamHTMLSurface* BlitzSteamHTMLSurface() {
+ return SteamHTMLSurface();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamHTMLSurface=_BlitzSteamHTMLSurface@0")
+
+DLL_EXPORT ISteamInventory* BlitzSteamInventory() {
+ return SteamInventory();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamInventory=_BlitzSteamInventory@0")
+
+DLL_EXPORT ISteamVideo* BlitzSteamVideo() {
+ return SteamVideo();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamVideo=_BlitzSteamVideo@0")
diff --git a/Wrapper/SteamAppList.cpp b/Wrapper/SteamAppList.cpp
new file mode 100644
index 0000000..adc7964
--- /dev/null
+++ b/Wrapper/SteamAppList.cpp
@@ -0,0 +1,26 @@
+#include "dllmain.h"
+
+DLL_EXPORT uint32_t BlitzSteamAppList_GetNumInstalledApps(ISteamAppList* lpSteamAppList) {
+ return lpSteamAppList->GetNumInstalledApps();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamAppList_GetNumInstalledApps=_BlitzSteamAppList_GetNumInstalledApps@4")
+
+DLL_EXPORT uint32_t BlitzSteamAppList_GetInstalledApps(ISteamAppList* lpSteamAppList, AppId_t *pvecAppID, uint32 unMaxAppIDs) {
+ return lpSteamAppList->GetInstalledApps(pvecAppID, unMaxAppIDs);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamAppList_GetInstalledApps=_BlitzSteamAppList_GetInstalledApps@12")
+
+DLL_EXPORT uint32_t BlitzSteamAppList_GetAppName(ISteamAppList* lpSteamAppList, AppId_t nAppID, char* pchName, uint32_t cchNameMax) {
+ return lpSteamAppList->GetAppName(nAppID, pchName, cchNameMax);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamAppList_GetAppName=_BlitzSteamAppList_GetAppName@16")
+
+DLL_EXPORT uint32_t BlitzSteamAppList_GetAppInstallDir(ISteamAppList* lpSteamAppList, AppId_t nAppID, char* pchDirectory, uint32_t cchDirectoryMax) {
+ return lpSteamAppList->GetAppInstallDir(nAppID, pchDirectory, cchDirectoryMax);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamAppList_GetAppName=_BlitzSteamAppList_GetAppName@16")
+
+DLL_EXPORT uint32_t BlitzSteamAppList_GetAppBuildId(ISteamAppList* lpSteamAppList, AppId_t nAppID) {
+ return lpSteamAppList->GetAppBuildId(nAppID);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamAppList_GetAppBuildId=_BlitzSteamAppList_GetAppBuildId@8")
diff --git a/Wrapper/SteamApps.cpp b/Wrapper/SteamApps.cpp
new file mode 100644
index 0000000..2d61d2f
--- /dev/null
+++ b/Wrapper/SteamApps.cpp
@@ -0,0 +1,121 @@
+#include "dllmain.h"
+
+DLL_EXPORT uint32_t BlitzSteamApps_IsSubscribed(ISteamApps* lpSteamApps) {
+ return lpSteamApps->BIsSubscribed();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_IsSubscribed=_BlitzSteamApps_IsSubscribed@4")
+
+DLL_EXPORT uint32_t BlitzSteamApps_IsLowViolence(ISteamApps* lpSteamApps) {
+ return lpSteamApps->BIsLowViolence();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_IsLowViolence=_BlitzSteamApps_IsLowViolence@4")
+
+DLL_EXPORT uint32_t BlitzSteamApps_IsCybercafe(ISteamApps* lpSteamApps) {
+ return lpSteamApps->BIsCybercafe();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_IsCybercafe=_BlitzSteamApps_IsCybercafe@4")
+
+DLL_EXPORT uint32_t BlitzSteamApps_IsVACBanned(ISteamApps* lpSteamApps) {
+ return lpSteamApps->BIsVACBanned();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_IsVACBanned=_BlitzSteamApps_IsVACBanned@4")
+
+DLL_EXPORT const char* BlitzSteamApps_GetCurrentGameLanguage(ISteamApps* lpSteamApps) {
+ return lpSteamApps->GetCurrentGameLanguage();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_GetCurrentGameLanguage=_BlitzSteamApps_GetCurrentGameLanguage@4")
+
+DLL_EXPORT const char* BlitzSteamApps_GetAvailableGameLanguages(ISteamApps* lpSteamApps) {
+ return lpSteamApps->GetAvailableGameLanguages();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_GetAvailableGameLanguages=_BlitzSteamApps_GetAvailableGameLanguages@4")
+
+DLL_EXPORT uint32_t BlitzSteamApps_IsSubscribedApp(ISteamApps* lpSteamApps, AppId_t appID) {
+ return lpSteamApps->BIsSubscribedApp(appID);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_IsSubscribedApp=_BlitzSteamApps_IsSubscribedApp@8")
+
+DLL_EXPORT uint32_t BlitzSteamApps_IsDlcInstalled(ISteamApps* lpSteamApps, AppId_t appID) {
+ return lpSteamApps->BIsDlcInstalled(appID);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_IsDlcInstalled=_BlitzSteamApps_IsDlcInstalled@8")
+
+DLL_EXPORT uint32_t BlitzSteamApps_GetEarliestPurchaseUnixTime(ISteamApps* lpSteamApps, AppId_t appID) {
+ return lpSteamApps->GetEarliestPurchaseUnixTime(appID);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_GetEarliestPurchaseUnixTime=_BlitzSteamApps_GetEarliestPurchaseUnixTime@8")
+
+DLL_EXPORT uint32_t BlitzSteamApps_IsSubscribedFromFreeWeekend(ISteamApps* lpSteamApps) {
+ return lpSteamApps->BIsSubscribedFromFreeWeekend();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_IsSubscribedFromFreeWeekend=_BlitzSteamApps_IsSubscribedFromFreeWeekend@4")
+
+DLL_EXPORT uint32_t BlitzSteamApps_GetDLCCount(ISteamApps* lpSteamApps) {
+ return lpSteamApps->GetDLCCount();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_GetDLCCount=_BlitzSteamApps_GetDLCCount@4")
+
+DLL_EXPORT uint32_t BlitzSteamApps_GetDLCDataByIndex(ISteamApps* lpSteamApps, uint32_t iDLC, AppId_t *pAppId, bool *pbAvailable, char *pchName, uint32_t cchNameBufferSize) {
+ return lpSteamApps->BGetDLCDataByIndex(iDLC, pAppId, pbAvailable, pchName, cchNameBufferSize);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_GetDLCDataByIndex=_BlitzSteamApps_GetDLCDataByIndex@24")
+
+DLL_EXPORT void BlitzSteamApps_InstallDLC(ISteamApps* lpSteamApps, AppId_t nAppID) {
+ lpSteamApps->InstallDLC(nAppID);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_InstallDLC=_BlitzSteamApps_InstallDLC@8")
+
+DLL_EXPORT void BlitzSteamApps_UninstallDLC(ISteamApps* lpSteamApps, AppId_t nAppID) {
+ lpSteamApps->UninstallDLC(nAppID);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_UninstallDLC=_BlitzSteamApps_UninstallDLC@8")
+
+DLL_EXPORT void BlitzSteamApps_RequestAppProofOfPurchaseKey(ISteamApps* lpSteamApps, AppId_t nAppID) {
+ lpSteamApps->RequestAppProofOfPurchaseKey(nAppID);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_RequestAppProofOfPurchaseKey=_BlitzSteamApps_RequestAppProofOfPurchaseKey@8")
+
+DLL_EXPORT uint32_t BlitzSteamApps_GetCurrentBetaName(ISteamApps* lpSteamApps, char *pchName, int cchNameBufferSize) {
+ return lpSteamApps->GetCurrentBetaName(pchName, cchNameBufferSize);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_GetCurrentBetaName=_BlitzSteamApps_GetCurrentBetaName@12")
+
+DLL_EXPORT uint32_t BlitzSteamApps_MarkContentCorrupt(ISteamApps* lpSteamApps, bool bMissingFilesOnly) {
+ return lpSteamApps->MarkContentCorrupt(bMissingFilesOnly);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_MarkContentCorrupt=_BlitzSteamApps_MarkContentCorrupt@8")
+
+DLL_EXPORT uint32_t BlitzSteamApps_GetInstalledDepots(ISteamApps* lpSteamApps, AppId_t nAppID, DepotId_t *pvecDepots, uint32_t cMaxDepots) {
+ return lpSteamApps->GetInstalledDepots(nAppID, pvecDepots, cMaxDepots);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_GetInstalledDepots=_BlitzSteamApps_GetInstalledDepots@16")
+
+DLL_EXPORT uint32_t BlitzSteamApps_GetAppInstallDir(ISteamApps* lpSteamApps, AppId_t appID, char *pchFolder, uint32 cchFolderBufferSize) {
+ return lpSteamApps->GetAppInstallDir(appID, pchFolder, cchFolderBufferSize);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_GetAppInstallDir=_BlitzSteamApps_GetAppInstallDir@16")
+
+DLL_EXPORT uint32_t BlitzSteamApps_IsAppInstalled(ISteamApps* lpSteamApps, AppId_t appID) {
+ return lpSteamApps->BIsAppInstalled(appID);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_IsAppInstalled=_BlitzSteamApps_IsAppInstalled@8")
+
+DLL_EXPORT CSteamID* BlitzSteamApps_GetAppOwner(ISteamApps* lpSteamApps) {
+ return &lpSteamApps->GetAppOwner();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_GetAppOwner=_BlitzSteamApps_GetAppOwner@4")
+
+DLL_EXPORT const char* BlitzSteamApps_GetLaunchQueryParam(ISteamApps* lpSteamApps, const char *pchKey) {
+ return lpSteamApps->GetLaunchQueryParam(pchKey);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_GetLaunchQueryParam=_BlitzSteamApps_GetLaunchQueryParam@8")
+
+DLL_EXPORT uint32_t BlitzSteamApps_GetDlcDownloadProgress(ISteamApps* lpSteamApps, AppId_t nAppID, uint64_t* pOutputBank) {
+ return lpSteamApps->GetDlcDownloadProgress(nAppID, pOutputBank, pOutputBank + 1);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_GetDlcDownloadProgress=_BlitzSteamApps_GetDlcDownloadProgress@12")
+
+DLL_EXPORT uint32_t BlitzSteamApps_GetAppBuildId(ISteamApps* lpSteamApps) {
+ return lpSteamApps->GetAppBuildId();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamApps_GetAppBuildId=_BlitzSteamApps_GetAppBuildId@4")
\ No newline at end of file
diff --git a/Wrapper/SteamClient.cpp b/Wrapper/SteamClient.cpp
index 5a4cd37..d23eeb0 100644
--- a/Wrapper/SteamClient.cpp
+++ b/Wrapper/SteamClient.cpp
@@ -1,20 +1,174 @@
#include "dllmain.h"
+DLL_EXPORT HSteamPipe BlitzSteamClient_CreateSteamPipe(ISteamClient* lpSteamClient) {
+ return lpSteamClient->CreateSteamPipe();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_CreateSteamPipe=_BlitzSteamClient_CreateSteamPipe@4")
+DLL_EXPORT bool BlitzSteamClient_ReleaseSteamPipe(ISteamClient* lpSteamClient, HSteamPipe hSteamPipe) {
+ return lpSteamClient->BReleaseSteamPipe(hSteamPipe);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_ReleaseSteamPipe=_BlitzSteamClient_ReleaseSteamPipe@8")
-// Callbacks
-DLL_EXPORT void SteamClient_SetWarningMessageHook(ISteamClient* lpSteamClient, SteamAPIWarningMessageHook_t pFunction) {
- lpSteamClient->SetWarningMessageHook(pFunction);
+DLL_EXPORT HSteamUser BlitzSteamClient_ConnectToGlobalUser(ISteamClient* lpSteamClient, HSteamPipe hSteamPipe) {
+ return lpSteamClient->ConnectToGlobalUser(hSteamPipe);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_ConnectToGlobalUser=_BlitzSteamClient_ConnectToGlobalUser@8")
+
+DLL_EXPORT void BlitzSteamClient_SetLocalIPBinding(ISteamClient* lpSteamClient, uint32_t unIP, uint16 usPort) {
+ return lpSteamClient->SetLocalIPBinding(unIP, usPort);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_SetLocalIPBinding=_BlitzSteamClient_SetLocalIPBinding@12")
+
+DLL_EXPORT HSteamUser BlitzSteamClient_CreateLocalUser(ISteamClient* lpSteamClient, HSteamPipe* phSteamPipe, EAccountType eAccountType) {
+ return lpSteamClient->CreateLocalUser(phSteamPipe, eAccountType);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_CreateLocalUser=_BlitzSteamClient_CreateLocalUser@12")
+
+DLL_EXPORT void BlitzSteamClient_ReleaseUser(ISteamClient* lpSteamClient, HSteamPipe hSteamPipe, HSteamUser hSteamUser) {
+ return lpSteamClient->ReleaseUser(hSteamPipe, hSteamUser);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_ReleaseUser=_BlitzSteamClient_ReleaseUser@12")
+
+DLL_EXPORT void BlitzSteamClient_RunFrame(ISteamClient* lpSteamClient) {
+ lpSteamClient->RunFrame();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_RunFrame=_BlitzSteamClient_RunFrame@4")
+
+DLL_EXPORT uint32_t BlitzSteamClient_GetIPCCallCount(ISteamClient* lpSteamClient) {
+ return lpSteamClient->GetIPCCallCount();
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetIPCCallCount=_BlitzSteamClient_GetIPCCallCount@4")
+
+DLL_EXPORT uint32_t BlitzSteamClient_ShutdownIfAllPipesClosed(ISteamClient* lpSteamClient) {
+ return lpSteamClient->BShutdownIfAllPipesClosed();
}
-DLL_EXPORT void SteamClient_Set_SteamAPI_CPostAPIResultInProcess(ISteamClient* lpSteamClient, SteamAPI_PostAPIResultInProcess_t fpFunction) {
+// Interfaces
+DLL_EXPORT ISteamUser* BlitzSteamClient_GetSteamUser(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamUser(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamUser=_BlitzSteamClient_GetSteamUser@16")
+
+DLL_EXPORT ISteamGameServer* BlitzSteamClient_GetSteamGameServer(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamGameServer(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamGameServer=_BlitzSteamClient_GetSteamGameServer@16")
+
+DLL_EXPORT ISteamFriends* BlitzSteamClient_GetSteamFriends(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamFriends(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamFriends=_BlitzSteamClient_GetSteamFriends@16")
+
+DLL_EXPORT ISteamUtils* BlitzSteamClient_GetSteamUtils(ISteamClient* lpSteamClient, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamUtils(hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamUtils=_BlitzSteamClient_GetSteamUtils@12")
+
+DLL_EXPORT ISteamMatchmaking* BlitzSteamClient_GetSteamMatchmaking(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamMatchmaking(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamMatchmaking=_BlitzSteamClient_GetSteamMatchmaking@16")
+
+DLL_EXPORT ISteamMatchmakingServers* BlitzSteamClient_GetSteamMatchmakingServers(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamMatchmakingServers(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamMatchmakingServers=_BlitzSteamClient_GetSteamMatchmakingServers@16")
+
+DLL_EXPORT ISteamUserStats* BlitzSteamClient_GetSteamUserStats(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamUserStats(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamUserStats=_BlitzSteamClient_GetSteamUserStats@16")
+
+DLL_EXPORT ISteamGameServerStats* BlitzSteamClient_GetSteamGameServerStats(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamGameServerStats(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamGameServerStats=_BlitzSteamClient_GetSteamGameServerStats@16")
+
+DLL_EXPORT ISteamApps* BlitzSteamClient_GetSteamApps(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamApps(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamApps=_BlitzSteamClient_GetSteamApps@16")
+
+DLL_EXPORT ISteamNetworking* BlitzSteamClient_GetSteamNetworking(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamNetworking(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamNetworking=_BlitzSteamClient_GetSteamNetworking@16")
+
+DLL_EXPORT ISteamRemoteStorage* BlitzSteamClient_GetSteamRemoteStorage(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamRemoteStorage(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamRemoteStorage=_BlitzSteamClient_GetSteamRemoteStorage@16")
+
+DLL_EXPORT ISteamScreenshots* BlitzSteamClient_GetSteamScreenshots(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamScreenshots(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamScreenshots=_BlitzSteamClient_GetSteamScreenshots@16")
+
+DLL_EXPORT ISteamHTTP* BlitzSteamClient_GetSteamHTTP(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamHTTP(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamHTTP=_BlitzSteamClient_GetSteamHTTP@16")
+
+DLL_EXPORT ISteamUnifiedMessages* BlitzSteamClient_GetSteamUnifiedMessages(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamUnifiedMessages(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamUnifiedMessages=_BlitzSteamClient_GetSteamUnifiedMessages@16")
+
+DLL_EXPORT ISteamController* BlitzSteamClient_GetSteamController(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamController(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamController=_BlitzSteamClient_GetSteamController@16")
+
+DLL_EXPORT ISteamUGC* BlitzSteamClient_GetSteamUGC(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamUGC(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamUGC=_BlitzSteamClient_GetSteamUGC@16")
+
+DLL_EXPORT ISteamAppList* BlitzSteamClient_GetSteamAppList(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamAppList(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamAppList=_BlitzSteamClient_GetSteamAppList@16")
+
+DLL_EXPORT ISteamMusic* BlitzSteamClient_GetSteamMusic(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamMusic(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamMusic=_BlitzSteamClient_GetSteamMusic@16")
+
+DLL_EXPORT ISteamMusicRemote* BlitzSteamClient_GetSteamMusicRemote(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamMusicRemote(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamMusicRemote=_BlitzSteamClient_GetSteamMusicRemote@16")
+
+DLL_EXPORT ISteamHTMLSurface* BlitzSteamClient_GetSteamHTMLSurface(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamHTMLSurface(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamHTMLSurface=_BlitzSteamClient_GetSteamHTMLSurface@16")
+
+DLL_EXPORT ISteamInventory* BlitzSteamClient_GetSteamInventory(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamInventory(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamInventory=_BlitzSteamClient_GetSteamInventory@16")
+
+DLL_EXPORT ISteamVideo* BlitzSteamClient_GetSteamVideo(ISteamClient* lpSteamClient, HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion) {
+ return lpSteamClient->GetISteamVideo(hSteamUser, hSteamPipe, pchVersion);
+}
+#pragma comment(linker, "/EXPORT:BlitzSteamClient_GetSteamVideo=_BlitzSteamClient_GetSteamVideo@16")
+
+
+// Callbacks & Hooks
+DLL_EXPORT void BlitzSteamClient_SetWarningMessageHook(ISteamClient* lpSteamClient, SteamAPIWarningMessageHook_t pfunction) {
+ lpSteamClient->SetWarningMessageHook(pfunction);
+}
+
+DLL_EXPORT void BlitzSteamClient_Set_SteamAPI_CPostAPIResultInProcess(ISteamClient* lpSteamClient, SteamAPI_PostAPIResultInProcess_t fpFunction) {
lpSteamClient->Set_SteamAPI_CPostAPIResultInProcess(fpFunction);
}
-DLL_EXPORT void SteamClient_Remove_SteamAPI_CPostAPIResultInProcess(ISteamClient* lpSteamClient, SteamAPI_PostAPIResultInProcess_t fpFunction) {
+DLL_EXPORT void BlitzSteamClient_Remove_SteamAPI_CPostAPIResultInProcess(ISteamClient* lpSteamClient, SteamAPI_PostAPIResultInProcess_t fpFunction) {
lpSteamClient->Remove_SteamAPI_CPostAPIResultInProcess(fpFunction);
}
-DLL_EXPORT void SteamClient_Set_SteamAPI_CCheckCallbackRegisteredInProcess(ISteamClient* lpSteamClient, SteamAPI_CheckCallbackRegistered_t fpFunction) {
+DLL_EXPORT void BlitzSteamClient_Set_SteamAPI_CCheckCallbackRegisteredInProcess(ISteamClient* lpSteamClient, SteamAPI_CheckCallbackRegistered_t fpFunction) {
lpSteamClient->Set_SteamAPI_CCheckCallbackRegisteredInProcess(fpFunction);
}
\ No newline at end of file
diff --git a/Wrapper/SteamController.cpp b/Wrapper/SteamController.cpp
new file mode 100644
index 0000000..1a2bd81
--- /dev/null
+++ b/Wrapper/SteamController.cpp
@@ -0,0 +1,2 @@
+#include "dllmain.h"
+
diff --git a/dllmain.h b/dllmain.h
index b2e205e..7340fd6 100644
--- a/dllmain.h
+++ b/dllmain.h
@@ -9,7 +9,7 @@
#include
// Macros
-#define DLL_EXPORT extern "C" __declspec(dllexport)
+#define DLL_EXPORT extern "C" //__declspec(dllexport)
// Steam
#include "steam/steam_api.h"