diff --git a/Facepunch.Steamworks.Test/Server/Server.cs b/Facepunch.Steamworks.Test/Server/Server.cs index d9e53f2..6269550 100644 --- a/Facepunch.Steamworks.Test/Server/Server.cs +++ b/Facepunch.Steamworks.Test/Server/Server.cs @@ -9,6 +9,9 @@ namespace Facepunch.Steamworks.Test [DeploymentItem( "tier0_s.dll" )] [DeploymentItem( "vstdlib_s.dll" )] [DeploymentItem( "steamclient.dll" )] + [DeploymentItem( "tier0_s64.dll" )] + [DeploymentItem( "vstdlib_s64.dll" )] + [DeploymentItem( "steamclient64.dll" )] [TestClass] public partial class Server { diff --git a/Facepunch.Steamworks.Test/bin/Debug/steamclient.dll b/Facepunch.Steamworks.Test/bin/Debug/steamclient.dll index 7f00869..fedc7b6 100644 Binary files a/Facepunch.Steamworks.Test/bin/Debug/steamclient.dll and b/Facepunch.Steamworks.Test/bin/Debug/steamclient.dll differ diff --git a/Facepunch.Steamworks.Test/bin/Debug/steamclient64.dll b/Facepunch.Steamworks.Test/bin/Debug/steamclient64.dll new file mode 100644 index 0000000..0fdb794 Binary files /dev/null and b/Facepunch.Steamworks.Test/bin/Debug/steamclient64.dll differ diff --git a/Facepunch.Steamworks.Test/bin/Debug/tier0_s.dll b/Facepunch.Steamworks.Test/bin/Debug/tier0_s.dll index 8ef8a75..83a2694 100644 Binary files a/Facepunch.Steamworks.Test/bin/Debug/tier0_s.dll and b/Facepunch.Steamworks.Test/bin/Debug/tier0_s.dll differ diff --git a/Facepunch.Steamworks.Test/bin/Debug/tier0_s64.dll b/Facepunch.Steamworks.Test/bin/Debug/tier0_s64.dll new file mode 100644 index 0000000..c755712 Binary files /dev/null and b/Facepunch.Steamworks.Test/bin/Debug/tier0_s64.dll differ diff --git a/Facepunch.Steamworks.Test/bin/Debug/vstdlib_s.dll b/Facepunch.Steamworks.Test/bin/Debug/vstdlib_s.dll index 00901fa..dbd87f9 100644 Binary files a/Facepunch.Steamworks.Test/bin/Debug/vstdlib_s.dll and b/Facepunch.Steamworks.Test/bin/Debug/vstdlib_s.dll differ diff --git a/Facepunch.Steamworks.Test/bin/Debug/vstdlib_s64.dll b/Facepunch.Steamworks.Test/bin/Debug/vstdlib_s64.dll new file mode 100644 index 0000000..ad3afed Binary files /dev/null and b/Facepunch.Steamworks.Test/bin/Debug/vstdlib_s64.dll differ diff --git a/Facepunch.Steamworks/Interfaces/Workshop.Query.cs b/Facepunch.Steamworks/Interfaces/Workshop.Query.cs index 58b1332..747aeee 100644 --- a/Facepunch.Steamworks/Interfaces/Workshop.Query.cs +++ b/Facepunch.Steamworks/Interfaces/Workshop.Query.cs @@ -177,7 +177,7 @@ namespace Facepunch.Steamworks private int GetStat( ulong handle, int index, ItemStatistic stat ) { - uint val = 0; + ulong val = 0; if ( !workshop.ugc.GetQueryUGCStatistic( handle, (uint)index, (SteamNative.ItemStatistic)(uint)stat, out val ) ) return 0; diff --git a/Facepunch.Steamworks/SteamNative/SteamNative.Enums.cs b/Facepunch.Steamworks/SteamNative/SteamNative.Enums.cs index 1fce637..3788e3f 100644 --- a/Facepunch.Steamworks/SteamNative/SteamNative.Enums.cs +++ b/Facepunch.Steamworks/SteamNative/SteamNative.Enums.cs @@ -125,6 +125,7 @@ namespace SteamNative GSOwnerDenied = 103, InvalidItemType = 104, IPBanned = 105, + GSLTExpired = 106, } // @@ -280,9 +281,11 @@ namespace SteamNative Driver = 128, Config = 256, Hardware = 512, + Franchise = 1024, Video = 2048, Plugin = 4096, Music = 8192, + Series = 16384, Shortcut = 1073741824, DepotOnly = -2147483648, } @@ -412,8 +415,9 @@ namespace SteamNative Option1 = 10, Option2 = 11, Option3 = 12, - OtherVR = 13, + OculusVR = 13, OpenVROverlay = 14, + OSVR = 15, Dialog = 1000, } @@ -422,6 +426,7 @@ namespace SteamNative // public enum VRHMDType : int { + None = -1, Unknown = 0, HTC_Dev = 1, HTC_VivePre = 2, @@ -433,6 +438,24 @@ namespace SteamNative Oculus_Unknown = 40, } + // + // EControllerType + // + public enum ControllerType : int + { + None = -1, + Unknown = 0, + UnknownSteamController = 1, + SteamController = 2, + UnknownNonSteamController = 30, + XBox360Controller = 31, + XBoxOneController = 32, + PS3Controller = 33, + PS4Controller = 34, + WiiController = 35, + AppleController = 36, + } + // // CGameID::EGameIDType // @@ -465,7 +488,7 @@ namespace SteamNative RequestInitiator = 4, Ignored = 5, IgnoredFriend = 6, - Suggested = 7, + Suggested_DEPRECATED = 7, Max = 8, } @@ -649,15 +672,6 @@ namespace SteamNative Banned = 16, } - // - // EResolveConflict - // - public enum ResolveConflict : int - { - Client = 1, - Server = 2, - } - // // ERemoteStoragePlatform // @@ -866,6 +880,19 @@ namespace SteamNative UDPRelay = 2, } + // + // EVRScreenshotType + // + public enum VRScreenshotType : int + { + None = 0, + Mono = 1, + Stereo = 2, + MonoCubemap = 3, + MonoPanorama = 4, + StereoPanorama = 5, + } + // // AudioPlayback_Status // @@ -987,6 +1014,8 @@ namespace SteamNative TouchMenu = 10, MouseJoystick = 11, MouseRegion = 12, + RadialMenu = 13, + Switches = 14, } // @@ -1036,6 +1065,81 @@ namespace SteamNative Count = 39, } + // + // EControllerActivationType + // + public enum ControllerActivationType : int + { + None = 0, + FullPress = 1, + SoftPress = 2, + StartPress = 3, + Release = 4, + LongPress = 5, + DoublePress = 6, + Analog = 7, + } + + // + // EControllerPressureButton + // + public enum ControllerPressureButton : int + { + LeftTrackPad = 0, + RightTrackPad = 1, + LeftBumper = 2, + RightBumper = 3, + LeftGripLower = 4, + RightGripLower = 5, + LeftGripUpper = 6, + RightGripUpper = 7, + Invalid = 8, + } + + // + // EControllerActivatorOutputAxis + // + public enum ControllerActivatorOutputAxis : int + { + LeftTrigger = 0, + RightTrigger = 1, + LeftThumbXPos = 2, + LeftThumbXNeg = 3, + LeftThumbYPos = 4, + LeftThumbYNeg = 5, + RightThumbXPos = 6, + RightThumbXNeg = 7, + RightThumbYPos = 8, + RightThumbYNeg = 9, + } + + // + // EControllerConfigFeature + // + public enum ControllerConfigFeature : int + { + None = 0, + Gamepad = 1, + Keyboard = 2, + Mouse = 3, + Gyro = 4, + TouchMenu = 5, + ModeShift = 6, + ActionSet = 7, + Activator = 8, + } + + // + // EControllerPopupMenuActivationType + // + public enum ControllerPopupMenuActivationType : int + { + ButtonPress = 0, + ButtonRelease = 1, + TouchRelease = 2, + TouchAlways = 3, + } + // // EUGCMatchingUGCType // @@ -1105,6 +1209,12 @@ namespace SteamNative RankedByVotesUp = 10, RankedByTextSearch = 11, RankedByTotalUniqueSubscriptions = 12, + RankedByPlaytimeTrend = 13, + RankedByTotalPlaytime = 14, + RankedByAveragePlaytimeTrend = 15, + RankedByLifetimeAveragePlaytime = 16, + RankedByPlaytimeSessionsTrend = 17, + RankedByLifetimePlaytimeSessions = 18, } // @@ -1147,6 +1257,9 @@ namespace SteamNative NumUniqueFollowers = 5, NumUniqueWebsiteViews = 6, ReportScore = 7, + NumSecondsPlayed = 8, + NumPlaytimeSessions = 9, + NumComments = 10, } // diff --git a/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Interface.cs b/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Interface.cs index 702f0cc..bd46e8b 100644 --- a/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Interface.cs +++ b/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Interface.cs @@ -40,6 +40,7 @@ namespace SteamNative bool /*bool*/ ISteamApps_GetDlcDownloadProgress( uint nAppID, out ulong /*uint64 **/ punBytesDownloaded, out ulong /*uint64 **/ punBytesTotal ); int /*int*/ ISteamApps_GetAppBuildId(); void /*void*/ ISteamApps_RequestAllProofOfPurchaseKeys(); + SteamAPICall_t /*(SteamAPICall_t)*/ ISteamApps_GetFileDetails( string /*const char **/ pszFileName ); HSteamPipe /*(HSteamPipe)*/ ISteamClient_CreateSteamPipe(); bool /*bool*/ ISteamClient_BReleaseSteamPipe( int hSteamPipe ); HSteamUser /*(HSteamUser)*/ ISteamClient_ConnectToGlobalUser( int hSteamPipe ); @@ -89,6 +90,11 @@ namespace SteamNative void /*void*/ ISteamController_StopAnalogActionMomentum( ulong controllerHandle, ulong eAction ); void /*void*/ ISteamController_TriggerHapticPulse( ulong controllerHandle, SteamControllerPad /*ESteamControllerPad*/ eTargetPad, ushort /*unsigned short*/ usDurationMicroSec ); void /*void*/ ISteamController_TriggerRepeatedHapticPulse( ulong controllerHandle, SteamControllerPad /*ESteamControllerPad*/ eTargetPad, ushort /*unsigned short*/ usDurationMicroSec, ushort /*unsigned short*/ usOffMicroSec, ushort /*unsigned short*/ unRepeat, uint /*unsigned int*/ nFlags ); + int /*int*/ ISteamController_GetGamepadIndexForController( ulong ulControllerHandle ); + ControllerHandle_t /*(ControllerHandle_t)*/ ISteamController_GetControllerForGamepadIndex( int /*int*/ nIndex ); + ControllerMotionData_t /*struct ControllerMotionData_t*/ ISteamController_GetMotionData( ulong controllerHandle ); + bool /*bool*/ ISteamController_ShowDigitalActionOrigins( ulong controllerHandle, ulong digitalActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ); + bool /*bool*/ ISteamController_ShowAnalogActionOrigins( ulong controllerHandle, ulong analogActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ); IntPtr ISteamFriends_GetPersonaName(); SteamAPICall_t /*(SteamAPICall_t)*/ ISteamFriends_SetPersonaName( string /*const char **/ pchPersonaName ); PersonaState /*EPersonaState*/ ISteamFriends_GetPersonaState(); @@ -294,7 +300,7 @@ namespace SteamNative bool /*bool*/ ISteamInventory_TradeItems( ref int pResultHandle, ulong steamIDTradePartner, ref ulong pArrayGive, out uint /*const uint32 **/ pArrayGiveQuantity, uint /*uint32*/ nArrayGiveLength, ref ulong pArrayGet, out uint /*const uint32 **/ pArrayGetQuantity, uint /*uint32*/ nArrayGetLength ); bool /*bool*/ ISteamInventory_LoadItemDefinitions(); bool /*bool*/ ISteamInventory_GetItemDefinitionIDs( IntPtr /*SteamItemDef_t **/ pItemDefIDs, out uint /*uint32 **/ punItemDefIDsArraySize ); - bool /*bool*/ ISteamInventory_GetItemDefinitionProperty( int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSize ); + bool /*bool*/ ISteamInventory_GetItemDefinitionProperty( int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSizeOut ); int /*int*/ ISteamMatchmaking_GetFavoriteGameCount(); bool /*bool*/ ISteamMatchmaking_GetFavoriteGame( int /*int*/ iGame, ref uint pnAppID, out uint /*uint32 **/ pnIP, out ushort /*uint16 **/ pnConnPort, out ushort /*uint16 **/ pnQueryPort, IntPtr /*uint32 **/ punFlags, out uint /*uint32 **/ pRTime32LastPlayedOnServer ); int /*int*/ ISteamMatchmaking_AddFavoriteGame( uint nAppID, uint /*uint32*/ nIP, ushort /*uint16*/ nConnPort, ushort /*uint16*/ nQueryPort, uint /*uint32*/ unFlags, uint /*uint32*/ rTime32LastPlayedOnServer ); @@ -433,7 +439,7 @@ namespace SteamNative RemoteStoragePlatform /*ERemoteStoragePlatform*/ ISteamRemoteStorage_GetSyncPlatforms( string /*const char **/ pchFile ); int /*int32*/ ISteamRemoteStorage_GetFileCount(); IntPtr ISteamRemoteStorage_GetFileNameAndSize( int /*int*/ iFile, IntPtr /*int32 **/ pnFileSizeInBytes ); - bool /*bool*/ ISteamRemoteStorage_GetQuota( IntPtr /*int32 **/ pnTotalBytes, IntPtr /*int32 **/ puAvailableBytes ); + bool /*bool*/ ISteamRemoteStorage_GetQuota( IntPtr /*uint64 **/ pnTotalBytes, IntPtr /*uint64 **/ puAvailableBytes ); bool /*bool*/ ISteamRemoteStorage_IsCloudEnabledForAccount(); bool /*bool*/ ISteamRemoteStorage_IsCloudEnabledForApp(); void /*void*/ ISteamRemoteStorage_SetCloudEnabledForApp( [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bEnabled ); @@ -475,6 +481,8 @@ namespace SteamNative bool /*bool*/ ISteamScreenshots_SetLocation( uint hScreenshot, string /*const char **/ pchLocation ); bool /*bool*/ ISteamScreenshots_TagUser( uint hScreenshot, ulong steamID ); bool /*bool*/ ISteamScreenshots_TagPublishedFile( uint hScreenshot, ulong unPublishedFileID ); + bool /*bool*/ ISteamScreenshots_IsScreenshotsHooked(); + ScreenshotHandle /*(ScreenshotHandle)*/ ISteamScreenshots_AddVRScreenshotToLibrary( VRScreenshotType /*EVRScreenshotType*/ eType, string /*const char **/ pchFilename, string /*const char **/ pchVRFilename ); UGCQueryHandle_t /*(UGCQueryHandle_t)*/ ISteamUGC_CreateQueryUserUGCRequest( uint unAccountID, UserUGCList /*EUserUGCList*/ eListType, UGCMatchingUGCType /*EUGCMatchingUGCType*/ eMatchingUGCType, UserUGCListSortOrder /*EUserUGCListSortOrder*/ eSortOrder, uint nCreatorAppID, uint nConsumerAppID, uint /*uint32*/ unPage ); UGCQueryHandle_t /*(UGCQueryHandle_t)*/ ISteamUGC_CreateQueryAllUGCRequest( UGCQuery /*EUGCQuery*/ eQueryType, UGCMatchingUGCType /*EUGCMatchingUGCType*/ eMatchingeMatchingUGCTypeFileType, uint nCreatorAppID, uint nConsumerAppID, uint /*uint32*/ unPage ); UGCQueryHandle_t /*(UGCQueryHandle_t)*/ ISteamUGC_CreateQueryUGCDetailsRequest( IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ); @@ -483,7 +491,7 @@ namespace SteamNative bool /*bool*/ ISteamUGC_GetQueryUGCPreviewURL( ulong handle, uint /*uint32*/ index, System.Text.StringBuilder /*char **/ pchURL, uint /*uint32*/ cchURLSize ); bool /*bool*/ ISteamUGC_GetQueryUGCMetadata( ulong handle, uint /*uint32*/ index, System.Text.StringBuilder /*char **/ pchMetadata, uint /*uint32*/ cchMetadatasize ); bool /*bool*/ ISteamUGC_GetQueryUGCChildren( ulong handle, uint /*uint32*/ index, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ cMaxEntries ); - bool /*bool*/ ISteamUGC_GetQueryUGCStatistic( ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out uint /*uint32 **/ pStatValue ); + bool /*bool*/ ISteamUGC_GetQueryUGCStatistic( ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out ulong /*uint64 **/ pStatValue ); uint /*uint32*/ ISteamUGC_GetQueryUGCNumAdditionalPreviews( ulong handle, uint /*uint32*/ index ); bool /*bool*/ ISteamUGC_GetQueryUGCAdditionalPreview( ulong handle, uint /*uint32*/ index, uint /*uint32*/ previewIndex, System.Text.StringBuilder /*char **/ pchURLOrVideoID, uint /*uint32*/ cchURLSize, System.Text.StringBuilder /*char **/ pchOriginalFileName, uint /*uint32*/ cchOriginalFileNameSize, out ItemPreviewType /*EItemPreviewType **/ pPreviewType ); uint /*uint32*/ ISteamUGC_GetQueryUGCNumKeyValueTags( ulong handle, uint /*uint32*/ index ); @@ -491,6 +499,7 @@ namespace SteamNative bool /*bool*/ ISteamUGC_ReleaseQueryUGCRequest( ulong handle ); bool /*bool*/ ISteamUGC_AddRequiredTag( ulong handle, string /*const char **/ pTagName ); bool /*bool*/ ISteamUGC_AddExcludedTag( ulong handle, string /*const char **/ pTagName ); + bool /*bool*/ ISteamUGC_SetReturnOnlyIDs( ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnOnlyIDs ); bool /*bool*/ ISteamUGC_SetReturnKeyValueTags( ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnKeyValueTags ); bool /*bool*/ ISteamUGC_SetReturnLongDescription( ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnLongDescription ); bool /*bool*/ ISteamUGC_SetReturnMetadata( ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnMetadata ); @@ -538,6 +547,9 @@ namespace SteamNative bool /*bool*/ ISteamUGC_DownloadItem( ulong nPublishedFileID, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bHighPriority ); bool /*bool*/ ISteamUGC_BInitWorkshopForGameServer( uint unWorkshopDepotID, string /*const char **/ pszFolder ); void /*void*/ ISteamUGC_SuspendDownloads( [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bSuspend ); + SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StartPlaytimeTracking( IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ); + SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StopPlaytimeTracking( IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ); + SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StopPlaytimeTrackingForAllItems(); ClientUnifiedMessageHandle /*(ClientUnifiedMessageHandle)*/ ISteamUnifiedMessages_SendMethod( string /*const char **/ pchServiceMethod, IntPtr /*const void **/ pRequestBuffer, uint /*uint32*/ unRequestBufferSize, ulong /*uint64*/ unContext ); bool /*bool*/ ISteamUnifiedMessages_GetMethodResponseInfo( ulong hHandle, out uint /*uint32 **/ punResponseSize, out Result /*EResult **/ peResult ); bool /*bool*/ ISteamUnifiedMessages_GetMethodResponseData( ulong hHandle, IntPtr /*void **/ pResponseBuffer, uint /*uint32*/ unResponseBufferSize, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bAutoRelease ); @@ -570,6 +582,8 @@ namespace SteamNative SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUser_RequestStoreAuthURL( string /*const char **/ pchRedirectURL ); bool /*bool*/ ISteamUser_BIsPhoneVerified(); bool /*bool*/ ISteamUser_BIsTwoFactorEnabled(); + bool /*bool*/ ISteamUser_BIsPhoneIdentifying(); + bool /*bool*/ ISteamUser_BIsPhoneRequiringVerification(); bool /*bool*/ ISteamUserStats_RequestCurrentStats(); bool /*bool*/ ISteamUserStats_GetStat( string /*const char **/ pchName, out int /*int32 **/ pData ); bool /*bool*/ ISteamUserStats_GetStat0( string /*const char **/ pchName, out float /*float **/ pData ); @@ -642,7 +656,7 @@ namespace SteamNative void /*void*/ ISteamUtils_StartVRDashboard(); void /*void*/ ISteamVideo_GetVideoURL( uint unVideoAppID ); bool /*bool*/ ISteamVideo_IsBroadcasting( IntPtr /*int **/ pnNumViewers ); - void /*void*/ SteamApi_SteamAPI_Init(); + bool /*bool*/ SteamApi_SteamAPI_Init(); void /*void*/ SteamApi_SteamAPI_RunCallbacks(); void /*void*/ SteamApi_SteamGameServer_RunCallbacks(); void /*void*/ SteamApi_SteamAPI_RegisterCallback( IntPtr /*void **/ pCallback, int /*int*/ callback ); diff --git a/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Linux32.cs b/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Linux32.cs index 65a262c..4d7129a 100644 --- a/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Linux32.cs +++ b/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Linux32.cs @@ -380,6 +380,18 @@ namespace SteamNative return Native.ISteamUser.BIsTwoFactorEnabled(_ptr); } + public virtual bool /*bool*/ ISteamUser_BIsPhoneIdentifying() + { + if ( _ptr == null ) throw new System.Exception( "ISteamUser _ptr is null!" ); + + return Native.ISteamUser.BIsPhoneIdentifying(_ptr); + } + public virtual bool /*bool*/ ISteamUser_BIsPhoneRequiringVerification() + { + if ( _ptr == null ) throw new System.Exception( "ISteamUser _ptr is null!" ); + + return Native.ISteamUser.BIsPhoneRequiringVerification(_ptr); + } public virtual IntPtr ISteamFriends_GetPersonaName() { @@ -1420,7 +1432,7 @@ namespace SteamNative return Native.ISteamRemoteStorage.GetFileNameAndSize(_ptr, iFile, pnFileSizeInBytes); } - public virtual bool /*bool*/ ISteamRemoteStorage_GetQuota( IntPtr /*int32 **/ pnTotalBytes, IntPtr /*int32 **/ puAvailableBytes ) + public virtual bool /*bool*/ ISteamRemoteStorage_GetQuota( IntPtr /*uint64 **/ pnTotalBytes, IntPtr /*uint64 **/ puAvailableBytes ) { if ( _ptr == null ) throw new System.Exception( "ISteamRemoteStorage _ptr is null!" ); @@ -2043,6 +2055,12 @@ namespace SteamNative Native.ISteamApps.RequestAllProofOfPurchaseKeys(_ptr); } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamApps_GetFileDetails( string /*const char **/ pszFileName ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamApps _ptr is null!" ); + + return Native.ISteamApps.GetFileDetails(_ptr, pszFileName); + } public virtual bool /*bool*/ ISteamNetworking_SendP2PPacket( ulong steamIDRemote, IntPtr /*const void **/ pubData, uint /*uint32*/ cubData, P2PSend /*EP2PSend*/ eP2PSendType, int /*int*/ nChannel ) { @@ -2222,6 +2240,18 @@ namespace SteamNative return Native.ISteamScreenshots.TagPublishedFile(_ptr, hScreenshot, unPublishedFileID); } + public virtual bool /*bool*/ ISteamScreenshots_IsScreenshotsHooked() + { + if ( _ptr == null ) throw new System.Exception( "ISteamScreenshots _ptr is null!" ); + + return Native.ISteamScreenshots.IsScreenshotsHooked(_ptr); + } + public virtual ScreenshotHandle /*(ScreenshotHandle)*/ ISteamScreenshots_AddVRScreenshotToLibrary( VRScreenshotType /*EVRScreenshotType*/ eType, string /*const char **/ pchFilename, string /*const char **/ pchVRFilename ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamScreenshots _ptr is null!" ); + + return Native.ISteamScreenshots.AddVRScreenshotToLibrary(_ptr, eType, pchFilename, pchVRFilename); + } public virtual bool /*bool*/ ISteamMusic_BIsEnabled() { @@ -2755,6 +2785,36 @@ namespace SteamNative Native.ISteamController.TriggerRepeatedHapticPulse(_ptr, controllerHandle, eTargetPad, usDurationMicroSec, usOffMicroSec, unRepeat, nFlags); } + public virtual int /*int*/ ISteamController_GetGamepadIndexForController( ulong ulControllerHandle ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.GetGamepadIndexForController(_ptr, ulControllerHandle); + } + public virtual ControllerHandle_t /*(ControllerHandle_t)*/ ISteamController_GetControllerForGamepadIndex( int /*int*/ nIndex ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.GetControllerForGamepadIndex(_ptr, nIndex); + } + public virtual ControllerMotionData_t /*struct ControllerMotionData_t*/ ISteamController_GetMotionData( ulong controllerHandle ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.GetMotionData(_ptr, controllerHandle); + } + public virtual bool /*bool*/ ISteamController_ShowDigitalActionOrigins( ulong controllerHandle, ulong digitalActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.ShowDigitalActionOrigins(_ptr, controllerHandle, digitalActionHandle, flScale, flXPosition, flYPosition); + } + public virtual bool /*bool*/ ISteamController_ShowAnalogActionOrigins( ulong controllerHandle, ulong analogActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.ShowAnalogActionOrigins(_ptr, controllerHandle, analogActionHandle, flScale, flXPosition, flYPosition); + } public virtual UGCQueryHandle_t /*(UGCQueryHandle_t)*/ ISteamUGC_CreateQueryUserUGCRequest( uint unAccountID, UserUGCList /*EUserUGCList*/ eListType, UGCMatchingUGCType /*EUGCMatchingUGCType*/ eMatchingUGCType, UserUGCListSortOrder /*EUserUGCListSortOrder*/ eSortOrder, uint nCreatorAppID, uint nConsumerAppID, uint /*uint32*/ unPage ) { @@ -2807,7 +2867,7 @@ namespace SteamNative return Native.ISteamUGC.GetQueryUGCChildren(_ptr, handle, index, pvecPublishedFileID, cMaxEntries); } - public virtual bool /*bool*/ ISteamUGC_GetQueryUGCStatistic( ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out uint /*uint32 **/ pStatValue ) + public virtual bool /*bool*/ ISteamUGC_GetQueryUGCStatistic( ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out ulong /*uint64 **/ pStatValue ) { if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); @@ -2855,6 +2915,12 @@ namespace SteamNative return Native.ISteamUGC.AddExcludedTag(_ptr, handle, pTagName); } + public virtual bool /*bool*/ ISteamUGC_SetReturnOnlyIDs( ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnOnlyIDs ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.SetReturnOnlyIDs(_ptr, handle, bReturnOnlyIDs); + } public virtual bool /*bool*/ ISteamUGC_SetReturnKeyValueTags( ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnKeyValueTags ) { if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); @@ -3137,6 +3203,24 @@ namespace SteamNative Native.ISteamUGC.SuspendDownloads(_ptr, bSuspend); } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StartPlaytimeTracking( IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.StartPlaytimeTracking(_ptr, pvecPublishedFileID, unNumPublishedFileIDs); + } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StopPlaytimeTracking( IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.StopPlaytimeTracking(_ptr, pvecPublishedFileID, unNumPublishedFileIDs); + } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StopPlaytimeTrackingForAllItems() + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.StopPlaytimeTrackingForAllItems(_ptr); + } public virtual uint /*uint32*/ ISteamAppList_GetNumInstalledApps() { @@ -3506,11 +3590,11 @@ namespace SteamNative return Native.ISteamInventory.GetItemDefinitionIDs(_ptr, pItemDefIDs, out punItemDefIDsArraySize); } - public virtual bool /*bool*/ ISteamInventory_GetItemDefinitionProperty( int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSize ) + public virtual bool /*bool*/ ISteamInventory_GetItemDefinitionProperty( int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSizeOut ) { if ( _ptr == null ) throw new System.Exception( "ISteamInventory _ptr is null!" ); - return Native.ISteamInventory.GetItemDefinitionProperty(_ptr, iDefinition, pchPropertyName, pchValueBuffer, out punValueBufferSize); + return Native.ISteamInventory.GetItemDefinitionProperty(_ptr, iDefinition, pchPropertyName, pchValueBuffer, out punValueBufferSizeOut); } public virtual void /*void*/ ISteamVideo_GetVideoURL( uint unVideoAppID ) @@ -3852,9 +3936,9 @@ namespace SteamNative return Native.ISteamGameServerStats.StoreUserStats(_ptr, steamIDUser); } - public virtual void /*void*/ SteamApi_SteamAPI_Init() + public virtual bool /*bool*/ SteamApi_SteamAPI_Init() { - Native.SteamApi.SteamAPI_Init(); + return Native.SteamApi.SteamAPI_Init(); } public virtual void /*void*/ SteamApi_SteamAPI_RunCallbacks() { @@ -4027,6 +4111,10 @@ namespace SteamNative internal static extern bool /*bool*/ BIsPhoneVerified( IntPtr ISteamUser ); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_BIsTwoFactorEnabled" )] internal static extern bool /*bool*/ BIsTwoFactorEnabled( IntPtr ISteamUser ); + [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_BIsPhoneIdentifying" )] + internal static extern bool /*bool*/ BIsPhoneIdentifying( IntPtr ISteamUser ); + [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUser_BIsPhoneRequiringVerification" )] + internal static extern bool /*bool*/ BIsPhoneRequiringVerification( IntPtr ISteamUser ); } internal static unsafe class ISteamFriends @@ -4392,7 +4480,7 @@ namespace SteamNative [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileNameAndSize" )] internal static extern IntPtr GetFileNameAndSize( IntPtr ISteamRemoteStorage, int /*int*/ iFile, IntPtr /*int32 **/ pnFileSizeInBytes ); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetQuota" )] - internal static extern bool /*bool*/ GetQuota( IntPtr ISteamRemoteStorage, IntPtr /*int32 **/ pnTotalBytes, IntPtr /*int32 **/ puAvailableBytes ); + internal static extern bool /*bool*/ GetQuota( IntPtr ISteamRemoteStorage, IntPtr /*uint64 **/ pnTotalBytes, IntPtr /*uint64 **/ puAvailableBytes ); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForAccount" )] internal static extern bool /*bool*/ IsCloudEnabledForAccount( IntPtr ISteamRemoteStorage ); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForApp" )] @@ -4605,6 +4693,8 @@ namespace SteamNative internal static extern int /*int*/ GetAppBuildId( IntPtr ISteamApps ); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_RequestAllProofOfPurchaseKeys" )] internal static extern void /*void*/ RequestAllProofOfPurchaseKeys( IntPtr ISteamApps ); + [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamApps_GetFileDetails" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ GetFileDetails( IntPtr ISteamApps, string /*const char **/ pszFileName ); } internal static unsafe class ISteamNetworking @@ -4671,6 +4761,10 @@ namespace SteamNative internal static extern bool /*bool*/ TagUser( IntPtr ISteamScreenshots, uint hScreenshot, ulong steamID ); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamScreenshots_TagPublishedFile" )] internal static extern bool /*bool*/ TagPublishedFile( IntPtr ISteamScreenshots, uint hScreenshot, ulong unPublishedFileID ); + [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamScreenshots_IsScreenshotsHooked" )] + internal static extern bool /*bool*/ IsScreenshotsHooked( IntPtr ISteamScreenshots ); + [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamScreenshots_AddVRScreenshotToLibrary" )] + internal static extern ScreenshotHandle /*(ScreenshotHandle)*/ AddVRScreenshotToLibrary( IntPtr ISteamScreenshots, VRScreenshotType /*EVRScreenshotType*/ eType, string /*const char **/ pchFilename, string /*const char **/ pchVRFilename ); } internal static unsafe class ISteamMusic @@ -4867,6 +4961,16 @@ namespace SteamNative internal static extern void /*void*/ TriggerHapticPulse( IntPtr ISteamController, ulong controllerHandle, SteamControllerPad /*ESteamControllerPad*/ eTargetPad, ushort /*unsigned short*/ usDurationMicroSec ); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_TriggerRepeatedHapticPulse" )] internal static extern void /*void*/ TriggerRepeatedHapticPulse( IntPtr ISteamController, ulong controllerHandle, SteamControllerPad /*ESteamControllerPad*/ eTargetPad, ushort /*unsigned short*/ usDurationMicroSec, ushort /*unsigned short*/ usOffMicroSec, ushort /*unsigned short*/ unRepeat, uint /*unsigned int*/ nFlags ); + [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_GetGamepadIndexForController" )] + internal static extern int /*int*/ GetGamepadIndexForController( IntPtr ISteamController, ulong ulControllerHandle ); + [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_GetControllerForGamepadIndex" )] + internal static extern ControllerHandle_t /*(ControllerHandle_t)*/ GetControllerForGamepadIndex( IntPtr ISteamController, int /*int*/ nIndex ); + [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_GetMotionData" )] + internal static extern ControllerMotionData_t /*struct ControllerMotionData_t*/ GetMotionData( IntPtr ISteamController, ulong controllerHandle ); + [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_ShowDigitalActionOrigins" )] + internal static extern bool /*bool*/ ShowDigitalActionOrigins( IntPtr ISteamController, ulong controllerHandle, ulong digitalActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ); + [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamController_ShowAnalogActionOrigins" )] + internal static extern bool /*bool*/ ShowAnalogActionOrigins( IntPtr ISteamController, ulong controllerHandle, ulong analogActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ); } internal static unsafe class ISteamUGC @@ -4888,7 +4992,7 @@ namespace SteamNative [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCChildren" )] internal static extern bool /*bool*/ GetQueryUGCChildren( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ cMaxEntries ); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCStatistic" )] - internal static extern bool /*bool*/ GetQueryUGCStatistic( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out uint /*uint32 **/ pStatValue ); + internal static extern bool /*bool*/ GetQueryUGCStatistic( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out ulong /*uint64 **/ pStatValue ); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCNumAdditionalPreviews" )] internal static extern uint /*uint32*/ GetQueryUGCNumAdditionalPreviews( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index ); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCAdditionalPreview" )] @@ -4903,6 +5007,8 @@ namespace SteamNative internal static extern bool /*bool*/ AddRequiredTag( IntPtr ISteamUGC, ulong handle, string /*const char **/ pTagName ); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_AddExcludedTag" )] internal static extern bool /*bool*/ AddExcludedTag( IntPtr ISteamUGC, ulong handle, string /*const char **/ pTagName ); + [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetReturnOnlyIDs" )] + internal static extern bool /*bool*/ SetReturnOnlyIDs( IntPtr ISteamUGC, ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnOnlyIDs ); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetReturnKeyValueTags" )] internal static extern bool /*bool*/ SetReturnKeyValueTags( IntPtr ISteamUGC, ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnKeyValueTags ); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SetReturnLongDescription" )] @@ -4997,6 +5103,12 @@ namespace SteamNative internal static extern bool /*bool*/ BInitWorkshopForGameServer( IntPtr ISteamUGC, uint unWorkshopDepotID, string /*const char **/ pszFolder ); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_SuspendDownloads" )] internal static extern void /*void*/ SuspendDownloads( IntPtr ISteamUGC, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bSuspend ); + [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_StartPlaytimeTracking" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ StartPlaytimeTracking( IntPtr ISteamUGC, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ); + [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_StopPlaytimeTracking" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ StopPlaytimeTracking( IntPtr ISteamUGC, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ); + [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamUGC_StopPlaytimeTrackingForAllItems" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ StopPlaytimeTrackingForAllItems( IntPtr ISteamUGC ); } internal static unsafe class ISteamAppList @@ -5132,7 +5244,7 @@ namespace SteamNative [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_GetItemDefinitionIDs" )] internal static extern bool /*bool*/ GetItemDefinitionIDs( IntPtr ISteamInventory, IntPtr /*SteamItemDef_t **/ pItemDefIDs, out uint /*uint32 **/ punItemDefIDsArraySize ); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_ISteamInventory_GetItemDefinitionProperty" )] - internal static extern bool /*bool*/ GetItemDefinitionProperty( IntPtr ISteamInventory, int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSize ); + internal static extern bool /*bool*/ GetItemDefinitionProperty( IntPtr ISteamInventory, int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSizeOut ); } internal static unsafe class ISteamVideo @@ -5262,7 +5374,7 @@ namespace SteamNative internal static unsafe class SteamApi { [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_Init" )] - internal static extern void /*void*/ SteamAPI_Init(); + internal static extern bool /*bool*/ SteamAPI_Init(); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamAPI_RunCallbacks" )] internal static extern void /*void*/ SteamAPI_RunCallbacks(); [DllImportAttribute( "libsteam_api.so", EntryPoint = "SteamGameServer_RunCallbacks" )] diff --git a/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Linux64.cs b/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Linux64.cs index 07861fc..1d0c3ad 100644 --- a/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Linux64.cs +++ b/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Linux64.cs @@ -380,6 +380,18 @@ namespace SteamNative return Native.ISteamUser.BIsTwoFactorEnabled(_ptr); } + public virtual bool /*bool*/ ISteamUser_BIsPhoneIdentifying() + { + if ( _ptr == null ) throw new System.Exception( "ISteamUser _ptr is null!" ); + + return Native.ISteamUser.BIsPhoneIdentifying(_ptr); + } + public virtual bool /*bool*/ ISteamUser_BIsPhoneRequiringVerification() + { + if ( _ptr == null ) throw new System.Exception( "ISteamUser _ptr is null!" ); + + return Native.ISteamUser.BIsPhoneRequiringVerification(_ptr); + } public virtual IntPtr ISteamFriends_GetPersonaName() { @@ -1420,7 +1432,7 @@ namespace SteamNative return Native.ISteamRemoteStorage.GetFileNameAndSize(_ptr, iFile, pnFileSizeInBytes); } - public virtual bool /*bool*/ ISteamRemoteStorage_GetQuota( IntPtr /*int32 **/ pnTotalBytes, IntPtr /*int32 **/ puAvailableBytes ) + public virtual bool /*bool*/ ISteamRemoteStorage_GetQuota( IntPtr /*uint64 **/ pnTotalBytes, IntPtr /*uint64 **/ puAvailableBytes ) { if ( _ptr == null ) throw new System.Exception( "ISteamRemoteStorage _ptr is null!" ); @@ -2043,6 +2055,12 @@ namespace SteamNative Native.ISteamApps.RequestAllProofOfPurchaseKeys(_ptr); } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamApps_GetFileDetails( string /*const char **/ pszFileName ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamApps _ptr is null!" ); + + return Native.ISteamApps.GetFileDetails(_ptr, pszFileName); + } public virtual bool /*bool*/ ISteamNetworking_SendP2PPacket( ulong steamIDRemote, IntPtr /*const void **/ pubData, uint /*uint32*/ cubData, P2PSend /*EP2PSend*/ eP2PSendType, int /*int*/ nChannel ) { @@ -2222,6 +2240,18 @@ namespace SteamNative return Native.ISteamScreenshots.TagPublishedFile(_ptr, hScreenshot, unPublishedFileID); } + public virtual bool /*bool*/ ISteamScreenshots_IsScreenshotsHooked() + { + if ( _ptr == null ) throw new System.Exception( "ISteamScreenshots _ptr is null!" ); + + return Native.ISteamScreenshots.IsScreenshotsHooked(_ptr); + } + public virtual ScreenshotHandle /*(ScreenshotHandle)*/ ISteamScreenshots_AddVRScreenshotToLibrary( VRScreenshotType /*EVRScreenshotType*/ eType, string /*const char **/ pchFilename, string /*const char **/ pchVRFilename ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamScreenshots _ptr is null!" ); + + return Native.ISteamScreenshots.AddVRScreenshotToLibrary(_ptr, eType, pchFilename, pchVRFilename); + } public virtual bool /*bool*/ ISteamMusic_BIsEnabled() { @@ -2755,6 +2785,36 @@ namespace SteamNative Native.ISteamController.TriggerRepeatedHapticPulse(_ptr, controllerHandle, eTargetPad, usDurationMicroSec, usOffMicroSec, unRepeat, nFlags); } + public virtual int /*int*/ ISteamController_GetGamepadIndexForController( ulong ulControllerHandle ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.GetGamepadIndexForController(_ptr, ulControllerHandle); + } + public virtual ControllerHandle_t /*(ControllerHandle_t)*/ ISteamController_GetControllerForGamepadIndex( int /*int*/ nIndex ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.GetControllerForGamepadIndex(_ptr, nIndex); + } + public virtual ControllerMotionData_t /*struct ControllerMotionData_t*/ ISteamController_GetMotionData( ulong controllerHandle ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.GetMotionData(_ptr, controllerHandle); + } + public virtual bool /*bool*/ ISteamController_ShowDigitalActionOrigins( ulong controllerHandle, ulong digitalActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.ShowDigitalActionOrigins(_ptr, controllerHandle, digitalActionHandle, flScale, flXPosition, flYPosition); + } + public virtual bool /*bool*/ ISteamController_ShowAnalogActionOrigins( ulong controllerHandle, ulong analogActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.ShowAnalogActionOrigins(_ptr, controllerHandle, analogActionHandle, flScale, flXPosition, flYPosition); + } public virtual UGCQueryHandle_t /*(UGCQueryHandle_t)*/ ISteamUGC_CreateQueryUserUGCRequest( uint unAccountID, UserUGCList /*EUserUGCList*/ eListType, UGCMatchingUGCType /*EUGCMatchingUGCType*/ eMatchingUGCType, UserUGCListSortOrder /*EUserUGCListSortOrder*/ eSortOrder, uint nCreatorAppID, uint nConsumerAppID, uint /*uint32*/ unPage ) { @@ -2807,7 +2867,7 @@ namespace SteamNative return Native.ISteamUGC.GetQueryUGCChildren(_ptr, handle, index, pvecPublishedFileID, cMaxEntries); } - public virtual bool /*bool*/ ISteamUGC_GetQueryUGCStatistic( ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out uint /*uint32 **/ pStatValue ) + public virtual bool /*bool*/ ISteamUGC_GetQueryUGCStatistic( ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out ulong /*uint64 **/ pStatValue ) { if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); @@ -2855,6 +2915,12 @@ namespace SteamNative return Native.ISteamUGC.AddExcludedTag(_ptr, handle, pTagName); } + public virtual bool /*bool*/ ISteamUGC_SetReturnOnlyIDs( ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnOnlyIDs ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.SetReturnOnlyIDs(_ptr, handle, bReturnOnlyIDs); + } public virtual bool /*bool*/ ISteamUGC_SetReturnKeyValueTags( ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnKeyValueTags ) { if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); @@ -3137,6 +3203,24 @@ namespace SteamNative Native.ISteamUGC.SuspendDownloads(_ptr, bSuspend); } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StartPlaytimeTracking( IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.StartPlaytimeTracking(_ptr, pvecPublishedFileID, unNumPublishedFileIDs); + } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StopPlaytimeTracking( IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.StopPlaytimeTracking(_ptr, pvecPublishedFileID, unNumPublishedFileIDs); + } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StopPlaytimeTrackingForAllItems() + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.StopPlaytimeTrackingForAllItems(_ptr); + } public virtual uint /*uint32*/ ISteamAppList_GetNumInstalledApps() { @@ -3506,11 +3590,11 @@ namespace SteamNative return Native.ISteamInventory.GetItemDefinitionIDs(_ptr, pItemDefIDs, out punItemDefIDsArraySize); } - public virtual bool /*bool*/ ISteamInventory_GetItemDefinitionProperty( int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSize ) + public virtual bool /*bool*/ ISteamInventory_GetItemDefinitionProperty( int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSizeOut ) { if ( _ptr == null ) throw new System.Exception( "ISteamInventory _ptr is null!" ); - return Native.ISteamInventory.GetItemDefinitionProperty(_ptr, iDefinition, pchPropertyName, pchValueBuffer, out punValueBufferSize); + return Native.ISteamInventory.GetItemDefinitionProperty(_ptr, iDefinition, pchPropertyName, pchValueBuffer, out punValueBufferSizeOut); } public virtual void /*void*/ ISteamVideo_GetVideoURL( uint unVideoAppID ) @@ -3852,9 +3936,9 @@ namespace SteamNative return Native.ISteamGameServerStats.StoreUserStats(_ptr, steamIDUser); } - public virtual void /*void*/ SteamApi_SteamAPI_Init() + public virtual bool /*bool*/ SteamApi_SteamAPI_Init() { - Native.SteamApi.SteamAPI_Init(); + return Native.SteamApi.SteamAPI_Init(); } public virtual void /*void*/ SteamApi_SteamAPI_RunCallbacks() { @@ -4027,6 +4111,10 @@ namespace SteamNative internal static extern bool /*bool*/ BIsPhoneVerified( IntPtr ISteamUser ); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamUser_BIsTwoFactorEnabled" )] internal static extern bool /*bool*/ BIsTwoFactorEnabled( IntPtr ISteamUser ); + [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamUser_BIsPhoneIdentifying" )] + internal static extern bool /*bool*/ BIsPhoneIdentifying( IntPtr ISteamUser ); + [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamUser_BIsPhoneRequiringVerification" )] + internal static extern bool /*bool*/ BIsPhoneRequiringVerification( IntPtr ISteamUser ); } internal static unsafe class ISteamFriends @@ -4392,7 +4480,7 @@ namespace SteamNative [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileNameAndSize" )] internal static extern IntPtr GetFileNameAndSize( IntPtr ISteamRemoteStorage, int /*int*/ iFile, IntPtr /*int32 **/ pnFileSizeInBytes ); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetQuota" )] - internal static extern bool /*bool*/ GetQuota( IntPtr ISteamRemoteStorage, IntPtr /*int32 **/ pnTotalBytes, IntPtr /*int32 **/ puAvailableBytes ); + internal static extern bool /*bool*/ GetQuota( IntPtr ISteamRemoteStorage, IntPtr /*uint64 **/ pnTotalBytes, IntPtr /*uint64 **/ puAvailableBytes ); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForAccount" )] internal static extern bool /*bool*/ IsCloudEnabledForAccount( IntPtr ISteamRemoteStorage ); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForApp" )] @@ -4605,6 +4693,8 @@ namespace SteamNative internal static extern int /*int*/ GetAppBuildId( IntPtr ISteamApps ); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamApps_RequestAllProofOfPurchaseKeys" )] internal static extern void /*void*/ RequestAllProofOfPurchaseKeys( IntPtr ISteamApps ); + [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamApps_GetFileDetails" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ GetFileDetails( IntPtr ISteamApps, string /*const char **/ pszFileName ); } internal static unsafe class ISteamNetworking @@ -4671,6 +4761,10 @@ namespace SteamNative internal static extern bool /*bool*/ TagUser( IntPtr ISteamScreenshots, uint hScreenshot, ulong steamID ); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamScreenshots_TagPublishedFile" )] internal static extern bool /*bool*/ TagPublishedFile( IntPtr ISteamScreenshots, uint hScreenshot, ulong unPublishedFileID ); + [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamScreenshots_IsScreenshotsHooked" )] + internal static extern bool /*bool*/ IsScreenshotsHooked( IntPtr ISteamScreenshots ); + [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamScreenshots_AddVRScreenshotToLibrary" )] + internal static extern ScreenshotHandle /*(ScreenshotHandle)*/ AddVRScreenshotToLibrary( IntPtr ISteamScreenshots, VRScreenshotType /*EVRScreenshotType*/ eType, string /*const char **/ pchFilename, string /*const char **/ pchVRFilename ); } internal static unsafe class ISteamMusic @@ -4867,6 +4961,16 @@ namespace SteamNative internal static extern void /*void*/ TriggerHapticPulse( IntPtr ISteamController, ulong controllerHandle, SteamControllerPad /*ESteamControllerPad*/ eTargetPad, ushort /*unsigned short*/ usDurationMicroSec ); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamController_TriggerRepeatedHapticPulse" )] internal static extern void /*void*/ TriggerRepeatedHapticPulse( IntPtr ISteamController, ulong controllerHandle, SteamControllerPad /*ESteamControllerPad*/ eTargetPad, ushort /*unsigned short*/ usDurationMicroSec, ushort /*unsigned short*/ usOffMicroSec, ushort /*unsigned short*/ unRepeat, uint /*unsigned int*/ nFlags ); + [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamController_GetGamepadIndexForController" )] + internal static extern int /*int*/ GetGamepadIndexForController( IntPtr ISteamController, ulong ulControllerHandle ); + [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamController_GetControllerForGamepadIndex" )] + internal static extern ControllerHandle_t /*(ControllerHandle_t)*/ GetControllerForGamepadIndex( IntPtr ISteamController, int /*int*/ nIndex ); + [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamController_GetMotionData" )] + internal static extern ControllerMotionData_t /*struct ControllerMotionData_t*/ GetMotionData( IntPtr ISteamController, ulong controllerHandle ); + [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamController_ShowDigitalActionOrigins" )] + internal static extern bool /*bool*/ ShowDigitalActionOrigins( IntPtr ISteamController, ulong controllerHandle, ulong digitalActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ); + [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamController_ShowAnalogActionOrigins" )] + internal static extern bool /*bool*/ ShowAnalogActionOrigins( IntPtr ISteamController, ulong controllerHandle, ulong analogActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ); } internal static unsafe class ISteamUGC @@ -4888,7 +4992,7 @@ namespace SteamNative [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCChildren" )] internal static extern bool /*bool*/ GetQueryUGCChildren( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ cMaxEntries ); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCStatistic" )] - internal static extern bool /*bool*/ GetQueryUGCStatistic( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out uint /*uint32 **/ pStatValue ); + internal static extern bool /*bool*/ GetQueryUGCStatistic( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out ulong /*uint64 **/ pStatValue ); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCNumAdditionalPreviews" )] internal static extern uint /*uint32*/ GetQueryUGCNumAdditionalPreviews( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index ); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCAdditionalPreview" )] @@ -4903,6 +5007,8 @@ namespace SteamNative internal static extern bool /*bool*/ AddRequiredTag( IntPtr ISteamUGC, ulong handle, string /*const char **/ pTagName ); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamUGC_AddExcludedTag" )] internal static extern bool /*bool*/ AddExcludedTag( IntPtr ISteamUGC, ulong handle, string /*const char **/ pTagName ); + [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamUGC_SetReturnOnlyIDs" )] + internal static extern bool /*bool*/ SetReturnOnlyIDs( IntPtr ISteamUGC, ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnOnlyIDs ); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamUGC_SetReturnKeyValueTags" )] internal static extern bool /*bool*/ SetReturnKeyValueTags( IntPtr ISteamUGC, ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnKeyValueTags ); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamUGC_SetReturnLongDescription" )] @@ -4997,6 +5103,12 @@ namespace SteamNative internal static extern bool /*bool*/ BInitWorkshopForGameServer( IntPtr ISteamUGC, uint unWorkshopDepotID, string /*const char **/ pszFolder ); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamUGC_SuspendDownloads" )] internal static extern void /*void*/ SuspendDownloads( IntPtr ISteamUGC, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bSuspend ); + [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamUGC_StartPlaytimeTracking" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ StartPlaytimeTracking( IntPtr ISteamUGC, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ); + [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamUGC_StopPlaytimeTracking" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ StopPlaytimeTracking( IntPtr ISteamUGC, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ); + [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamUGC_StopPlaytimeTrackingForAllItems" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ StopPlaytimeTrackingForAllItems( IntPtr ISteamUGC ); } internal static unsafe class ISteamAppList @@ -5132,7 +5244,7 @@ namespace SteamNative [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamInventory_GetItemDefinitionIDs" )] internal static extern bool /*bool*/ GetItemDefinitionIDs( IntPtr ISteamInventory, IntPtr /*SteamItemDef_t **/ pItemDefIDs, out uint /*uint32 **/ punItemDefIDsArraySize ); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_ISteamInventory_GetItemDefinitionProperty" )] - internal static extern bool /*bool*/ GetItemDefinitionProperty( IntPtr ISteamInventory, int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSize ); + internal static extern bool /*bool*/ GetItemDefinitionProperty( IntPtr ISteamInventory, int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSizeOut ); } internal static unsafe class ISteamVideo @@ -5262,7 +5374,7 @@ namespace SteamNative internal static unsafe class SteamApi { [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_Init" )] - internal static extern void /*void*/ SteamAPI_Init(); + internal static extern bool /*bool*/ SteamAPI_Init(); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamAPI_RunCallbacks" )] internal static extern void /*void*/ SteamAPI_RunCallbacks(); [DllImportAttribute( "libsteam_api64.so", EntryPoint = "SteamGameServer_RunCallbacks" )] diff --git a/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Mac.cs b/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Mac.cs index a6dc8c8..25e5ba1 100644 --- a/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Mac.cs +++ b/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Mac.cs @@ -380,6 +380,18 @@ namespace SteamNative return Native.ISteamUser.BIsTwoFactorEnabled(_ptr); } + public virtual bool /*bool*/ ISteamUser_BIsPhoneIdentifying() + { + if ( _ptr == null ) throw new System.Exception( "ISteamUser _ptr is null!" ); + + return Native.ISteamUser.BIsPhoneIdentifying(_ptr); + } + public virtual bool /*bool*/ ISteamUser_BIsPhoneRequiringVerification() + { + if ( _ptr == null ) throw new System.Exception( "ISteamUser _ptr is null!" ); + + return Native.ISteamUser.BIsPhoneRequiringVerification(_ptr); + } public virtual IntPtr ISteamFriends_GetPersonaName() { @@ -1420,7 +1432,7 @@ namespace SteamNative return Native.ISteamRemoteStorage.GetFileNameAndSize(_ptr, iFile, pnFileSizeInBytes); } - public virtual bool /*bool*/ ISteamRemoteStorage_GetQuota( IntPtr /*int32 **/ pnTotalBytes, IntPtr /*int32 **/ puAvailableBytes ) + public virtual bool /*bool*/ ISteamRemoteStorage_GetQuota( IntPtr /*uint64 **/ pnTotalBytes, IntPtr /*uint64 **/ puAvailableBytes ) { if ( _ptr == null ) throw new System.Exception( "ISteamRemoteStorage _ptr is null!" ); @@ -2043,6 +2055,12 @@ namespace SteamNative Native.ISteamApps.RequestAllProofOfPurchaseKeys(_ptr); } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamApps_GetFileDetails( string /*const char **/ pszFileName ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamApps _ptr is null!" ); + + return Native.ISteamApps.GetFileDetails(_ptr, pszFileName); + } public virtual bool /*bool*/ ISteamNetworking_SendP2PPacket( ulong steamIDRemote, IntPtr /*const void **/ pubData, uint /*uint32*/ cubData, P2PSend /*EP2PSend*/ eP2PSendType, int /*int*/ nChannel ) { @@ -2222,6 +2240,18 @@ namespace SteamNative return Native.ISteamScreenshots.TagPublishedFile(_ptr, hScreenshot, unPublishedFileID); } + public virtual bool /*bool*/ ISteamScreenshots_IsScreenshotsHooked() + { + if ( _ptr == null ) throw new System.Exception( "ISteamScreenshots _ptr is null!" ); + + return Native.ISteamScreenshots.IsScreenshotsHooked(_ptr); + } + public virtual ScreenshotHandle /*(ScreenshotHandle)*/ ISteamScreenshots_AddVRScreenshotToLibrary( VRScreenshotType /*EVRScreenshotType*/ eType, string /*const char **/ pchFilename, string /*const char **/ pchVRFilename ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamScreenshots _ptr is null!" ); + + return Native.ISteamScreenshots.AddVRScreenshotToLibrary(_ptr, eType, pchFilename, pchVRFilename); + } public virtual bool /*bool*/ ISteamMusic_BIsEnabled() { @@ -2755,6 +2785,36 @@ namespace SteamNative Native.ISteamController.TriggerRepeatedHapticPulse(_ptr, controllerHandle, eTargetPad, usDurationMicroSec, usOffMicroSec, unRepeat, nFlags); } + public virtual int /*int*/ ISteamController_GetGamepadIndexForController( ulong ulControllerHandle ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.GetGamepadIndexForController(_ptr, ulControllerHandle); + } + public virtual ControllerHandle_t /*(ControllerHandle_t)*/ ISteamController_GetControllerForGamepadIndex( int /*int*/ nIndex ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.GetControllerForGamepadIndex(_ptr, nIndex); + } + public virtual ControllerMotionData_t /*struct ControllerMotionData_t*/ ISteamController_GetMotionData( ulong controllerHandle ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.GetMotionData(_ptr, controllerHandle); + } + public virtual bool /*bool*/ ISteamController_ShowDigitalActionOrigins( ulong controllerHandle, ulong digitalActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.ShowDigitalActionOrigins(_ptr, controllerHandle, digitalActionHandle, flScale, flXPosition, flYPosition); + } + public virtual bool /*bool*/ ISteamController_ShowAnalogActionOrigins( ulong controllerHandle, ulong analogActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.ShowAnalogActionOrigins(_ptr, controllerHandle, analogActionHandle, flScale, flXPosition, flYPosition); + } public virtual UGCQueryHandle_t /*(UGCQueryHandle_t)*/ ISteamUGC_CreateQueryUserUGCRequest( uint unAccountID, UserUGCList /*EUserUGCList*/ eListType, UGCMatchingUGCType /*EUGCMatchingUGCType*/ eMatchingUGCType, UserUGCListSortOrder /*EUserUGCListSortOrder*/ eSortOrder, uint nCreatorAppID, uint nConsumerAppID, uint /*uint32*/ unPage ) { @@ -2807,7 +2867,7 @@ namespace SteamNative return Native.ISteamUGC.GetQueryUGCChildren(_ptr, handle, index, pvecPublishedFileID, cMaxEntries); } - public virtual bool /*bool*/ ISteamUGC_GetQueryUGCStatistic( ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out uint /*uint32 **/ pStatValue ) + public virtual bool /*bool*/ ISteamUGC_GetQueryUGCStatistic( ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out ulong /*uint64 **/ pStatValue ) { if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); @@ -2855,6 +2915,12 @@ namespace SteamNative return Native.ISteamUGC.AddExcludedTag(_ptr, handle, pTagName); } + public virtual bool /*bool*/ ISteamUGC_SetReturnOnlyIDs( ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnOnlyIDs ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.SetReturnOnlyIDs(_ptr, handle, bReturnOnlyIDs); + } public virtual bool /*bool*/ ISteamUGC_SetReturnKeyValueTags( ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnKeyValueTags ) { if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); @@ -3137,6 +3203,24 @@ namespace SteamNative Native.ISteamUGC.SuspendDownloads(_ptr, bSuspend); } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StartPlaytimeTracking( IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.StartPlaytimeTracking(_ptr, pvecPublishedFileID, unNumPublishedFileIDs); + } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StopPlaytimeTracking( IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.StopPlaytimeTracking(_ptr, pvecPublishedFileID, unNumPublishedFileIDs); + } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StopPlaytimeTrackingForAllItems() + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.StopPlaytimeTrackingForAllItems(_ptr); + } public virtual uint /*uint32*/ ISteamAppList_GetNumInstalledApps() { @@ -3506,11 +3590,11 @@ namespace SteamNative return Native.ISteamInventory.GetItemDefinitionIDs(_ptr, pItemDefIDs, out punItemDefIDsArraySize); } - public virtual bool /*bool*/ ISteamInventory_GetItemDefinitionProperty( int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSize ) + public virtual bool /*bool*/ ISteamInventory_GetItemDefinitionProperty( int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSizeOut ) { if ( _ptr == null ) throw new System.Exception( "ISteamInventory _ptr is null!" ); - return Native.ISteamInventory.GetItemDefinitionProperty(_ptr, iDefinition, pchPropertyName, pchValueBuffer, out punValueBufferSize); + return Native.ISteamInventory.GetItemDefinitionProperty(_ptr, iDefinition, pchPropertyName, pchValueBuffer, out punValueBufferSizeOut); } public virtual void /*void*/ ISteamVideo_GetVideoURL( uint unVideoAppID ) @@ -3852,9 +3936,9 @@ namespace SteamNative return Native.ISteamGameServerStats.StoreUserStats(_ptr, steamIDUser); } - public virtual void /*void*/ SteamApi_SteamAPI_Init() + public virtual bool /*bool*/ SteamApi_SteamAPI_Init() { - Native.SteamApi.SteamAPI_Init(); + return Native.SteamApi.SteamAPI_Init(); } public virtual void /*void*/ SteamApi_SteamAPI_RunCallbacks() { @@ -4027,6 +4111,10 @@ namespace SteamNative internal static extern bool /*bool*/ BIsPhoneVerified( IntPtr ISteamUser ); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamUser_BIsTwoFactorEnabled" )] internal static extern bool /*bool*/ BIsTwoFactorEnabled( IntPtr ISteamUser ); + [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamUser_BIsPhoneIdentifying" )] + internal static extern bool /*bool*/ BIsPhoneIdentifying( IntPtr ISteamUser ); + [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamUser_BIsPhoneRequiringVerification" )] + internal static extern bool /*bool*/ BIsPhoneRequiringVerification( IntPtr ISteamUser ); } internal static unsafe class ISteamFriends @@ -4392,7 +4480,7 @@ namespace SteamNative [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileNameAndSize" )] internal static extern IntPtr GetFileNameAndSize( IntPtr ISteamRemoteStorage, int /*int*/ iFile, IntPtr /*int32 **/ pnFileSizeInBytes ); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetQuota" )] - internal static extern bool /*bool*/ GetQuota( IntPtr ISteamRemoteStorage, IntPtr /*int32 **/ pnTotalBytes, IntPtr /*int32 **/ puAvailableBytes ); + internal static extern bool /*bool*/ GetQuota( IntPtr ISteamRemoteStorage, IntPtr /*uint64 **/ pnTotalBytes, IntPtr /*uint64 **/ puAvailableBytes ); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForAccount" )] internal static extern bool /*bool*/ IsCloudEnabledForAccount( IntPtr ISteamRemoteStorage ); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForApp" )] @@ -4605,6 +4693,8 @@ namespace SteamNative internal static extern int /*int*/ GetAppBuildId( IntPtr ISteamApps ); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamApps_RequestAllProofOfPurchaseKeys" )] internal static extern void /*void*/ RequestAllProofOfPurchaseKeys( IntPtr ISteamApps ); + [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamApps_GetFileDetails" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ GetFileDetails( IntPtr ISteamApps, string /*const char **/ pszFileName ); } internal static unsafe class ISteamNetworking @@ -4671,6 +4761,10 @@ namespace SteamNative internal static extern bool /*bool*/ TagUser( IntPtr ISteamScreenshots, uint hScreenshot, ulong steamID ); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamScreenshots_TagPublishedFile" )] internal static extern bool /*bool*/ TagPublishedFile( IntPtr ISteamScreenshots, uint hScreenshot, ulong unPublishedFileID ); + [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamScreenshots_IsScreenshotsHooked" )] + internal static extern bool /*bool*/ IsScreenshotsHooked( IntPtr ISteamScreenshots ); + [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamScreenshots_AddVRScreenshotToLibrary" )] + internal static extern ScreenshotHandle /*(ScreenshotHandle)*/ AddVRScreenshotToLibrary( IntPtr ISteamScreenshots, VRScreenshotType /*EVRScreenshotType*/ eType, string /*const char **/ pchFilename, string /*const char **/ pchVRFilename ); } internal static unsafe class ISteamMusic @@ -4867,6 +4961,16 @@ namespace SteamNative internal static extern void /*void*/ TriggerHapticPulse( IntPtr ISteamController, ulong controllerHandle, SteamControllerPad /*ESteamControllerPad*/ eTargetPad, ushort /*unsigned short*/ usDurationMicroSec ); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamController_TriggerRepeatedHapticPulse" )] internal static extern void /*void*/ TriggerRepeatedHapticPulse( IntPtr ISteamController, ulong controllerHandle, SteamControllerPad /*ESteamControllerPad*/ eTargetPad, ushort /*unsigned short*/ usDurationMicroSec, ushort /*unsigned short*/ usOffMicroSec, ushort /*unsigned short*/ unRepeat, uint /*unsigned int*/ nFlags ); + [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamController_GetGamepadIndexForController" )] + internal static extern int /*int*/ GetGamepadIndexForController( IntPtr ISteamController, ulong ulControllerHandle ); + [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamController_GetControllerForGamepadIndex" )] + internal static extern ControllerHandle_t /*(ControllerHandle_t)*/ GetControllerForGamepadIndex( IntPtr ISteamController, int /*int*/ nIndex ); + [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamController_GetMotionData" )] + internal static extern ControllerMotionData_t /*struct ControllerMotionData_t*/ GetMotionData( IntPtr ISteamController, ulong controllerHandle ); + [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamController_ShowDigitalActionOrigins" )] + internal static extern bool /*bool*/ ShowDigitalActionOrigins( IntPtr ISteamController, ulong controllerHandle, ulong digitalActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ); + [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamController_ShowAnalogActionOrigins" )] + internal static extern bool /*bool*/ ShowAnalogActionOrigins( IntPtr ISteamController, ulong controllerHandle, ulong analogActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ); } internal static unsafe class ISteamUGC @@ -4888,7 +4992,7 @@ namespace SteamNative [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCChildren" )] internal static extern bool /*bool*/ GetQueryUGCChildren( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ cMaxEntries ); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCStatistic" )] - internal static extern bool /*bool*/ GetQueryUGCStatistic( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out uint /*uint32 **/ pStatValue ); + internal static extern bool /*bool*/ GetQueryUGCStatistic( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out ulong /*uint64 **/ pStatValue ); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCNumAdditionalPreviews" )] internal static extern uint /*uint32*/ GetQueryUGCNumAdditionalPreviews( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index ); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCAdditionalPreview" )] @@ -4903,6 +5007,8 @@ namespace SteamNative internal static extern bool /*bool*/ AddRequiredTag( IntPtr ISteamUGC, ulong handle, string /*const char **/ pTagName ); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamUGC_AddExcludedTag" )] internal static extern bool /*bool*/ AddExcludedTag( IntPtr ISteamUGC, ulong handle, string /*const char **/ pTagName ); + [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamUGC_SetReturnOnlyIDs" )] + internal static extern bool /*bool*/ SetReturnOnlyIDs( IntPtr ISteamUGC, ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnOnlyIDs ); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamUGC_SetReturnKeyValueTags" )] internal static extern bool /*bool*/ SetReturnKeyValueTags( IntPtr ISteamUGC, ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnKeyValueTags ); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamUGC_SetReturnLongDescription" )] @@ -4997,6 +5103,12 @@ namespace SteamNative internal static extern bool /*bool*/ BInitWorkshopForGameServer( IntPtr ISteamUGC, uint unWorkshopDepotID, string /*const char **/ pszFolder ); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamUGC_SuspendDownloads" )] internal static extern void /*void*/ SuspendDownloads( IntPtr ISteamUGC, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bSuspend ); + [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamUGC_StartPlaytimeTracking" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ StartPlaytimeTracking( IntPtr ISteamUGC, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ); + [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamUGC_StopPlaytimeTracking" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ StopPlaytimeTracking( IntPtr ISteamUGC, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ); + [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamUGC_StopPlaytimeTrackingForAllItems" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ StopPlaytimeTrackingForAllItems( IntPtr ISteamUGC ); } internal static unsafe class ISteamAppList @@ -5132,7 +5244,7 @@ namespace SteamNative [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamInventory_GetItemDefinitionIDs" )] internal static extern bool /*bool*/ GetItemDefinitionIDs( IntPtr ISteamInventory, IntPtr /*SteamItemDef_t **/ pItemDefIDs, out uint /*uint32 **/ punItemDefIDsArraySize ); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_ISteamInventory_GetItemDefinitionProperty" )] - internal static extern bool /*bool*/ GetItemDefinitionProperty( IntPtr ISteamInventory, int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSize ); + internal static extern bool /*bool*/ GetItemDefinitionProperty( IntPtr ISteamInventory, int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSizeOut ); } internal static unsafe class ISteamVideo @@ -5262,7 +5374,7 @@ namespace SteamNative internal static unsafe class SteamApi { [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_Init" )] - internal static extern void /*void*/ SteamAPI_Init(); + internal static extern bool /*bool*/ SteamAPI_Init(); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamAPI_RunCallbacks" )] internal static extern void /*void*/ SteamAPI_RunCallbacks(); [DllImportAttribute( "libsteam_api.dylib", EntryPoint = "SteamGameServer_RunCallbacks" )] diff --git a/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Win32.cs b/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Win32.cs index 1286d5f..7c1d5f2 100644 --- a/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Win32.cs +++ b/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Win32.cs @@ -380,6 +380,18 @@ namespace SteamNative return Native.ISteamUser.BIsTwoFactorEnabled(_ptr); } + public virtual bool /*bool*/ ISteamUser_BIsPhoneIdentifying() + { + if ( _ptr == null ) throw new System.Exception( "ISteamUser _ptr is null!" ); + + return Native.ISteamUser.BIsPhoneIdentifying(_ptr); + } + public virtual bool /*bool*/ ISteamUser_BIsPhoneRequiringVerification() + { + if ( _ptr == null ) throw new System.Exception( "ISteamUser _ptr is null!" ); + + return Native.ISteamUser.BIsPhoneRequiringVerification(_ptr); + } public virtual IntPtr ISteamFriends_GetPersonaName() { @@ -1417,7 +1429,7 @@ namespace SteamNative return Native.ISteamRemoteStorage.GetFileNameAndSize(_ptr, iFile, pnFileSizeInBytes); } - public virtual bool /*bool*/ ISteamRemoteStorage_GetQuota( IntPtr /*int32 **/ pnTotalBytes, IntPtr /*int32 **/ puAvailableBytes ) + public virtual bool /*bool*/ ISteamRemoteStorage_GetQuota( IntPtr /*uint64 **/ pnTotalBytes, IntPtr /*uint64 **/ puAvailableBytes ) { if ( _ptr == null ) throw new System.Exception( "ISteamRemoteStorage _ptr is null!" ); @@ -2037,6 +2049,12 @@ namespace SteamNative Native.ISteamApps.RequestAllProofOfPurchaseKeys(_ptr); } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamApps_GetFileDetails( string /*const char **/ pszFileName ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamApps _ptr is null!" ); + + return Native.ISteamApps.GetFileDetails(_ptr, pszFileName); + } public virtual bool /*bool*/ ISteamNetworking_SendP2PPacket( ulong steamIDRemote, IntPtr /*const void **/ pubData, uint /*uint32*/ cubData, P2PSend /*EP2PSend*/ eP2PSendType, int /*int*/ nChannel ) { @@ -2213,6 +2231,18 @@ namespace SteamNative return Native.ISteamScreenshots.TagPublishedFile(_ptr, hScreenshot, unPublishedFileID); } + public virtual bool /*bool*/ ISteamScreenshots_IsScreenshotsHooked() + { + if ( _ptr == null ) throw new System.Exception( "ISteamScreenshots _ptr is null!" ); + + return Native.ISteamScreenshots.IsScreenshotsHooked(_ptr); + } + public virtual ScreenshotHandle /*(ScreenshotHandle)*/ ISteamScreenshots_AddVRScreenshotToLibrary( VRScreenshotType /*EVRScreenshotType*/ eType, string /*const char **/ pchFilename, string /*const char **/ pchVRFilename ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamScreenshots _ptr is null!" ); + + return Native.ISteamScreenshots.AddVRScreenshotToLibrary(_ptr, eType, pchFilename, pchVRFilename); + } public virtual bool /*bool*/ ISteamMusic_BIsEnabled() { @@ -2746,6 +2776,36 @@ namespace SteamNative Native.ISteamController.TriggerRepeatedHapticPulse(_ptr, controllerHandle, eTargetPad, usDurationMicroSec, usOffMicroSec, unRepeat, nFlags); } + public virtual int /*int*/ ISteamController_GetGamepadIndexForController( ulong ulControllerHandle ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.GetGamepadIndexForController(_ptr, ulControllerHandle); + } + public virtual ControllerHandle_t /*(ControllerHandle_t)*/ ISteamController_GetControllerForGamepadIndex( int /*int*/ nIndex ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.GetControllerForGamepadIndex(_ptr, nIndex); + } + public virtual ControllerMotionData_t /*struct ControllerMotionData_t*/ ISteamController_GetMotionData( ulong controllerHandle ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.GetMotionData(_ptr, controllerHandle); + } + public virtual bool /*bool*/ ISteamController_ShowDigitalActionOrigins( ulong controllerHandle, ulong digitalActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.ShowDigitalActionOrigins(_ptr, controllerHandle, digitalActionHandle, flScale, flXPosition, flYPosition); + } + public virtual bool /*bool*/ ISteamController_ShowAnalogActionOrigins( ulong controllerHandle, ulong analogActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.ShowAnalogActionOrigins(_ptr, controllerHandle, analogActionHandle, flScale, flXPosition, flYPosition); + } public virtual UGCQueryHandle_t /*(UGCQueryHandle_t)*/ ISteamUGC_CreateQueryUserUGCRequest( uint unAccountID, UserUGCList /*EUserUGCList*/ eListType, UGCMatchingUGCType /*EUGCMatchingUGCType*/ eMatchingUGCType, UserUGCListSortOrder /*EUserUGCListSortOrder*/ eSortOrder, uint nCreatorAppID, uint nConsumerAppID, uint /*uint32*/ unPage ) { @@ -2795,7 +2855,7 @@ namespace SteamNative return Native.ISteamUGC.GetQueryUGCChildren(_ptr, handle, index, pvecPublishedFileID, cMaxEntries); } - public virtual bool /*bool*/ ISteamUGC_GetQueryUGCStatistic( ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out uint /*uint32 **/ pStatValue ) + public virtual bool /*bool*/ ISteamUGC_GetQueryUGCStatistic( ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out ulong /*uint64 **/ pStatValue ) { if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); @@ -2843,6 +2903,12 @@ namespace SteamNative return Native.ISteamUGC.AddExcludedTag(_ptr, handle, pTagName); } + public virtual bool /*bool*/ ISteamUGC_SetReturnOnlyIDs( ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnOnlyIDs ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.SetReturnOnlyIDs(_ptr, handle, bReturnOnlyIDs); + } public virtual bool /*bool*/ ISteamUGC_SetReturnKeyValueTags( ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnKeyValueTags ) { if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); @@ -3125,6 +3191,24 @@ namespace SteamNative Native.ISteamUGC.SuspendDownloads(_ptr, bSuspend); } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StartPlaytimeTracking( IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.StartPlaytimeTracking(_ptr, pvecPublishedFileID, unNumPublishedFileIDs); + } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StopPlaytimeTracking( IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.StopPlaytimeTracking(_ptr, pvecPublishedFileID, unNumPublishedFileIDs); + } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StopPlaytimeTrackingForAllItems() + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.StopPlaytimeTrackingForAllItems(_ptr); + } public virtual uint /*uint32*/ ISteamAppList_GetNumInstalledApps() { @@ -3494,11 +3578,11 @@ namespace SteamNative return Native.ISteamInventory.GetItemDefinitionIDs(_ptr, pItemDefIDs, out punItemDefIDsArraySize); } - public virtual bool /*bool*/ ISteamInventory_GetItemDefinitionProperty( int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSize ) + public virtual bool /*bool*/ ISteamInventory_GetItemDefinitionProperty( int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSizeOut ) { if ( _ptr == null ) throw new System.Exception( "ISteamInventory _ptr is null!" ); - return Native.ISteamInventory.GetItemDefinitionProperty(_ptr, iDefinition, pchPropertyName, pchValueBuffer, out punValueBufferSize); + return Native.ISteamInventory.GetItemDefinitionProperty(_ptr, iDefinition, pchPropertyName, pchValueBuffer, out punValueBufferSizeOut); } public virtual void /*void*/ ISteamVideo_GetVideoURL( uint unVideoAppID ) @@ -3840,9 +3924,9 @@ namespace SteamNative return Native.ISteamGameServerStats.StoreUserStats(_ptr, steamIDUser); } - public virtual void /*void*/ SteamApi_SteamAPI_Init() + public virtual bool /*bool*/ SteamApi_SteamAPI_Init() { - Native.SteamApi.SteamAPI_Init(); + return Native.SteamApi.SteamAPI_Init(); } public virtual void /*void*/ SteamApi_SteamAPI_RunCallbacks() { @@ -4015,6 +4099,10 @@ namespace SteamNative internal static extern bool /*bool*/ BIsPhoneVerified( IntPtr ISteamUser ); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamUser_BIsTwoFactorEnabled" )] internal static extern bool /*bool*/ BIsTwoFactorEnabled( IntPtr ISteamUser ); + [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamUser_BIsPhoneIdentifying" )] + internal static extern bool /*bool*/ BIsPhoneIdentifying( IntPtr ISteamUser ); + [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamUser_BIsPhoneRequiringVerification" )] + internal static extern bool /*bool*/ BIsPhoneRequiringVerification( IntPtr ISteamUser ); } internal static unsafe class ISteamFriends @@ -4380,7 +4468,7 @@ namespace SteamNative [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileNameAndSize" )] internal static extern IntPtr GetFileNameAndSize( IntPtr ISteamRemoteStorage, int /*int*/ iFile, IntPtr /*int32 **/ pnFileSizeInBytes ); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetQuota" )] - internal static extern bool /*bool*/ GetQuota( IntPtr ISteamRemoteStorage, IntPtr /*int32 **/ pnTotalBytes, IntPtr /*int32 **/ puAvailableBytes ); + internal static extern bool /*bool*/ GetQuota( IntPtr ISteamRemoteStorage, IntPtr /*uint64 **/ pnTotalBytes, IntPtr /*uint64 **/ puAvailableBytes ); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForAccount" )] internal static extern bool /*bool*/ IsCloudEnabledForAccount( IntPtr ISteamRemoteStorage ); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForApp" )] @@ -4593,6 +4681,8 @@ namespace SteamNative internal static extern int /*int*/ GetAppBuildId( IntPtr ISteamApps ); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamApps_RequestAllProofOfPurchaseKeys" )] internal static extern void /*void*/ RequestAllProofOfPurchaseKeys( IntPtr ISteamApps ); + [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamApps_GetFileDetails" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ GetFileDetails( IntPtr ISteamApps, string /*const char **/ pszFileName ); } internal static unsafe class ISteamNetworking @@ -4659,6 +4749,10 @@ namespace SteamNative internal static extern bool /*bool*/ TagUser( IntPtr ISteamScreenshots, uint hScreenshot, ulong steamID ); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamScreenshots_TagPublishedFile" )] internal static extern bool /*bool*/ TagPublishedFile( IntPtr ISteamScreenshots, uint hScreenshot, ulong unPublishedFileID ); + [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamScreenshots_IsScreenshotsHooked" )] + internal static extern bool /*bool*/ IsScreenshotsHooked( IntPtr ISteamScreenshots ); + [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamScreenshots_AddVRScreenshotToLibrary" )] + internal static extern ScreenshotHandle /*(ScreenshotHandle)*/ AddVRScreenshotToLibrary( IntPtr ISteamScreenshots, VRScreenshotType /*EVRScreenshotType*/ eType, string /*const char **/ pchFilename, string /*const char **/ pchVRFilename ); } internal static unsafe class ISteamMusic @@ -4855,6 +4949,16 @@ namespace SteamNative internal static extern void /*void*/ TriggerHapticPulse( IntPtr ISteamController, ulong controllerHandle, SteamControllerPad /*ESteamControllerPad*/ eTargetPad, ushort /*unsigned short*/ usDurationMicroSec ); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamController_TriggerRepeatedHapticPulse" )] internal static extern void /*void*/ TriggerRepeatedHapticPulse( IntPtr ISteamController, ulong controllerHandle, SteamControllerPad /*ESteamControllerPad*/ eTargetPad, ushort /*unsigned short*/ usDurationMicroSec, ushort /*unsigned short*/ usOffMicroSec, ushort /*unsigned short*/ unRepeat, uint /*unsigned int*/ nFlags ); + [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamController_GetGamepadIndexForController" )] + internal static extern int /*int*/ GetGamepadIndexForController( IntPtr ISteamController, ulong ulControllerHandle ); + [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamController_GetControllerForGamepadIndex" )] + internal static extern ControllerHandle_t /*(ControllerHandle_t)*/ GetControllerForGamepadIndex( IntPtr ISteamController, int /*int*/ nIndex ); + [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamController_GetMotionData" )] + internal static extern ControllerMotionData_t /*struct ControllerMotionData_t*/ GetMotionData( IntPtr ISteamController, ulong controllerHandle ); + [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamController_ShowDigitalActionOrigins" )] + internal static extern bool /*bool*/ ShowDigitalActionOrigins( IntPtr ISteamController, ulong controllerHandle, ulong digitalActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ); + [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamController_ShowAnalogActionOrigins" )] + internal static extern bool /*bool*/ ShowAnalogActionOrigins( IntPtr ISteamController, ulong controllerHandle, ulong analogActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ); } internal static unsafe class ISteamUGC @@ -4876,7 +4980,7 @@ namespace SteamNative [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCChildren" )] internal static extern bool /*bool*/ GetQueryUGCChildren( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ cMaxEntries ); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCStatistic" )] - internal static extern bool /*bool*/ GetQueryUGCStatistic( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out uint /*uint32 **/ pStatValue ); + internal static extern bool /*bool*/ GetQueryUGCStatistic( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out ulong /*uint64 **/ pStatValue ); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCNumAdditionalPreviews" )] internal static extern uint /*uint32*/ GetQueryUGCNumAdditionalPreviews( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index ); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCAdditionalPreview" )] @@ -4891,6 +4995,8 @@ namespace SteamNative internal static extern bool /*bool*/ AddRequiredTag( IntPtr ISteamUGC, ulong handle, string /*const char **/ pTagName ); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamUGC_AddExcludedTag" )] internal static extern bool /*bool*/ AddExcludedTag( IntPtr ISteamUGC, ulong handle, string /*const char **/ pTagName ); + [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamUGC_SetReturnOnlyIDs" )] + internal static extern bool /*bool*/ SetReturnOnlyIDs( IntPtr ISteamUGC, ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnOnlyIDs ); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamUGC_SetReturnKeyValueTags" )] internal static extern bool /*bool*/ SetReturnKeyValueTags( IntPtr ISteamUGC, ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnKeyValueTags ); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamUGC_SetReturnLongDescription" )] @@ -4985,6 +5091,12 @@ namespace SteamNative internal static extern bool /*bool*/ BInitWorkshopForGameServer( IntPtr ISteamUGC, uint unWorkshopDepotID, string /*const char **/ pszFolder ); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamUGC_SuspendDownloads" )] internal static extern void /*void*/ SuspendDownloads( IntPtr ISteamUGC, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bSuspend ); + [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamUGC_StartPlaytimeTracking" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ StartPlaytimeTracking( IntPtr ISteamUGC, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ); + [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamUGC_StopPlaytimeTracking" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ StopPlaytimeTracking( IntPtr ISteamUGC, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ); + [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamUGC_StopPlaytimeTrackingForAllItems" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ StopPlaytimeTrackingForAllItems( IntPtr ISteamUGC ); } internal static unsafe class ISteamAppList @@ -5120,7 +5232,7 @@ namespace SteamNative [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamInventory_GetItemDefinitionIDs" )] internal static extern bool /*bool*/ GetItemDefinitionIDs( IntPtr ISteamInventory, IntPtr /*SteamItemDef_t **/ pItemDefIDs, out uint /*uint32 **/ punItemDefIDsArraySize ); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_ISteamInventory_GetItemDefinitionProperty" )] - internal static extern bool /*bool*/ GetItemDefinitionProperty( IntPtr ISteamInventory, int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSize ); + internal static extern bool /*bool*/ GetItemDefinitionProperty( IntPtr ISteamInventory, int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSizeOut ); } internal static unsafe class ISteamVideo @@ -5250,7 +5362,7 @@ namespace SteamNative internal static unsafe class SteamApi { [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_Init" )] - internal static extern void /*void*/ SteamAPI_Init(); + internal static extern bool /*bool*/ SteamAPI_Init(); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamAPI_RunCallbacks" )] internal static extern void /*void*/ SteamAPI_RunCallbacks(); [DllImportAttribute( "steam_api.dll", EntryPoint = "SteamGameServer_RunCallbacks" )] diff --git a/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Win64.cs b/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Win64.cs index d91e3c4..6d2d8e8 100644 --- a/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Win64.cs +++ b/Facepunch.Steamworks/SteamNative/SteamNative.Platform.Win64.cs @@ -380,6 +380,18 @@ namespace SteamNative return Native.ISteamUser.BIsTwoFactorEnabled(_ptr); } + public virtual bool /*bool*/ ISteamUser_BIsPhoneIdentifying() + { + if ( _ptr == null ) throw new System.Exception( "ISteamUser _ptr is null!" ); + + return Native.ISteamUser.BIsPhoneIdentifying(_ptr); + } + public virtual bool /*bool*/ ISteamUser_BIsPhoneRequiringVerification() + { + if ( _ptr == null ) throw new System.Exception( "ISteamUser _ptr is null!" ); + + return Native.ISteamUser.BIsPhoneRequiringVerification(_ptr); + } public virtual IntPtr ISteamFriends_GetPersonaName() { @@ -1417,7 +1429,7 @@ namespace SteamNative return Native.ISteamRemoteStorage.GetFileNameAndSize(_ptr, iFile, pnFileSizeInBytes); } - public virtual bool /*bool*/ ISteamRemoteStorage_GetQuota( IntPtr /*int32 **/ pnTotalBytes, IntPtr /*int32 **/ puAvailableBytes ) + public virtual bool /*bool*/ ISteamRemoteStorage_GetQuota( IntPtr /*uint64 **/ pnTotalBytes, IntPtr /*uint64 **/ puAvailableBytes ) { if ( _ptr == null ) throw new System.Exception( "ISteamRemoteStorage _ptr is null!" ); @@ -2037,6 +2049,12 @@ namespace SteamNative Native.ISteamApps.RequestAllProofOfPurchaseKeys(_ptr); } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamApps_GetFileDetails( string /*const char **/ pszFileName ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamApps _ptr is null!" ); + + return Native.ISteamApps.GetFileDetails(_ptr, pszFileName); + } public virtual bool /*bool*/ ISteamNetworking_SendP2PPacket( ulong steamIDRemote, IntPtr /*const void **/ pubData, uint /*uint32*/ cubData, P2PSend /*EP2PSend*/ eP2PSendType, int /*int*/ nChannel ) { @@ -2213,6 +2231,18 @@ namespace SteamNative return Native.ISteamScreenshots.TagPublishedFile(_ptr, hScreenshot, unPublishedFileID); } + public virtual bool /*bool*/ ISteamScreenshots_IsScreenshotsHooked() + { + if ( _ptr == null ) throw new System.Exception( "ISteamScreenshots _ptr is null!" ); + + return Native.ISteamScreenshots.IsScreenshotsHooked(_ptr); + } + public virtual ScreenshotHandle /*(ScreenshotHandle)*/ ISteamScreenshots_AddVRScreenshotToLibrary( VRScreenshotType /*EVRScreenshotType*/ eType, string /*const char **/ pchFilename, string /*const char **/ pchVRFilename ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamScreenshots _ptr is null!" ); + + return Native.ISteamScreenshots.AddVRScreenshotToLibrary(_ptr, eType, pchFilename, pchVRFilename); + } public virtual bool /*bool*/ ISteamMusic_BIsEnabled() { @@ -2746,6 +2776,36 @@ namespace SteamNative Native.ISteamController.TriggerRepeatedHapticPulse(_ptr, controllerHandle, eTargetPad, usDurationMicroSec, usOffMicroSec, unRepeat, nFlags); } + public virtual int /*int*/ ISteamController_GetGamepadIndexForController( ulong ulControllerHandle ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.GetGamepadIndexForController(_ptr, ulControllerHandle); + } + public virtual ControllerHandle_t /*(ControllerHandle_t)*/ ISteamController_GetControllerForGamepadIndex( int /*int*/ nIndex ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.GetControllerForGamepadIndex(_ptr, nIndex); + } + public virtual ControllerMotionData_t /*struct ControllerMotionData_t*/ ISteamController_GetMotionData( ulong controllerHandle ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.GetMotionData(_ptr, controllerHandle); + } + public virtual bool /*bool*/ ISteamController_ShowDigitalActionOrigins( ulong controllerHandle, ulong digitalActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.ShowDigitalActionOrigins(_ptr, controllerHandle, digitalActionHandle, flScale, flXPosition, flYPosition); + } + public virtual bool /*bool*/ ISteamController_ShowAnalogActionOrigins( ulong controllerHandle, ulong analogActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamController _ptr is null!" ); + + return Native.ISteamController.ShowAnalogActionOrigins(_ptr, controllerHandle, analogActionHandle, flScale, flXPosition, flYPosition); + } public virtual UGCQueryHandle_t /*(UGCQueryHandle_t)*/ ISteamUGC_CreateQueryUserUGCRequest( uint unAccountID, UserUGCList /*EUserUGCList*/ eListType, UGCMatchingUGCType /*EUGCMatchingUGCType*/ eMatchingUGCType, UserUGCListSortOrder /*EUserUGCListSortOrder*/ eSortOrder, uint nCreatorAppID, uint nConsumerAppID, uint /*uint32*/ unPage ) { @@ -2795,7 +2855,7 @@ namespace SteamNative return Native.ISteamUGC.GetQueryUGCChildren(_ptr, handle, index, pvecPublishedFileID, cMaxEntries); } - public virtual bool /*bool*/ ISteamUGC_GetQueryUGCStatistic( ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out uint /*uint32 **/ pStatValue ) + public virtual bool /*bool*/ ISteamUGC_GetQueryUGCStatistic( ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out ulong /*uint64 **/ pStatValue ) { if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); @@ -2843,6 +2903,12 @@ namespace SteamNative return Native.ISteamUGC.AddExcludedTag(_ptr, handle, pTagName); } + public virtual bool /*bool*/ ISteamUGC_SetReturnOnlyIDs( ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnOnlyIDs ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.SetReturnOnlyIDs(_ptr, handle, bReturnOnlyIDs); + } public virtual bool /*bool*/ ISteamUGC_SetReturnKeyValueTags( ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnKeyValueTags ) { if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); @@ -3125,6 +3191,24 @@ namespace SteamNative Native.ISteamUGC.SuspendDownloads(_ptr, bSuspend); } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StartPlaytimeTracking( IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.StartPlaytimeTracking(_ptr, pvecPublishedFileID, unNumPublishedFileIDs); + } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StopPlaytimeTracking( IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ) + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.StopPlaytimeTracking(_ptr, pvecPublishedFileID, unNumPublishedFileIDs); + } + public virtual SteamAPICall_t /*(SteamAPICall_t)*/ ISteamUGC_StopPlaytimeTrackingForAllItems() + { + if ( _ptr == null ) throw new System.Exception( "ISteamUGC _ptr is null!" ); + + return Native.ISteamUGC.StopPlaytimeTrackingForAllItems(_ptr); + } public virtual uint /*uint32*/ ISteamAppList_GetNumInstalledApps() { @@ -3494,11 +3578,11 @@ namespace SteamNative return Native.ISteamInventory.GetItemDefinitionIDs(_ptr, pItemDefIDs, out punItemDefIDsArraySize); } - public virtual bool /*bool*/ ISteamInventory_GetItemDefinitionProperty( int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSize ) + public virtual bool /*bool*/ ISteamInventory_GetItemDefinitionProperty( int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSizeOut ) { if ( _ptr == null ) throw new System.Exception( "ISteamInventory _ptr is null!" ); - return Native.ISteamInventory.GetItemDefinitionProperty(_ptr, iDefinition, pchPropertyName, pchValueBuffer, out punValueBufferSize); + return Native.ISteamInventory.GetItemDefinitionProperty(_ptr, iDefinition, pchPropertyName, pchValueBuffer, out punValueBufferSizeOut); } public virtual void /*void*/ ISteamVideo_GetVideoURL( uint unVideoAppID ) @@ -3840,9 +3924,9 @@ namespace SteamNative return Native.ISteamGameServerStats.StoreUserStats(_ptr, steamIDUser); } - public virtual void /*void*/ SteamApi_SteamAPI_Init() + public virtual bool /*bool*/ SteamApi_SteamAPI_Init() { - Native.SteamApi.SteamAPI_Init(); + return Native.SteamApi.SteamAPI_Init(); } public virtual void /*void*/ SteamApi_SteamAPI_RunCallbacks() { @@ -4015,6 +4099,10 @@ namespace SteamNative internal static extern bool /*bool*/ BIsPhoneVerified( IntPtr ISteamUser ); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamUser_BIsTwoFactorEnabled" )] internal static extern bool /*bool*/ BIsTwoFactorEnabled( IntPtr ISteamUser ); + [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamUser_BIsPhoneIdentifying" )] + internal static extern bool /*bool*/ BIsPhoneIdentifying( IntPtr ISteamUser ); + [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamUser_BIsPhoneRequiringVerification" )] + internal static extern bool /*bool*/ BIsPhoneRequiringVerification( IntPtr ISteamUser ); } internal static unsafe class ISteamFriends @@ -4380,7 +4468,7 @@ namespace SteamNative [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetFileNameAndSize" )] internal static extern IntPtr GetFileNameAndSize( IntPtr ISteamRemoteStorage, int /*int*/ iFile, IntPtr /*int32 **/ pnFileSizeInBytes ); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamRemoteStorage_GetQuota" )] - internal static extern bool /*bool*/ GetQuota( IntPtr ISteamRemoteStorage, IntPtr /*int32 **/ pnTotalBytes, IntPtr /*int32 **/ puAvailableBytes ); + internal static extern bool /*bool*/ GetQuota( IntPtr ISteamRemoteStorage, IntPtr /*uint64 **/ pnTotalBytes, IntPtr /*uint64 **/ puAvailableBytes ); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForAccount" )] internal static extern bool /*bool*/ IsCloudEnabledForAccount( IntPtr ISteamRemoteStorage ); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamRemoteStorage_IsCloudEnabledForApp" )] @@ -4593,6 +4681,8 @@ namespace SteamNative internal static extern int /*int*/ GetAppBuildId( IntPtr ISteamApps ); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamApps_RequestAllProofOfPurchaseKeys" )] internal static extern void /*void*/ RequestAllProofOfPurchaseKeys( IntPtr ISteamApps ); + [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamApps_GetFileDetails" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ GetFileDetails( IntPtr ISteamApps, string /*const char **/ pszFileName ); } internal static unsafe class ISteamNetworking @@ -4659,6 +4749,10 @@ namespace SteamNative internal static extern bool /*bool*/ TagUser( IntPtr ISteamScreenshots, uint hScreenshot, ulong steamID ); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamScreenshots_TagPublishedFile" )] internal static extern bool /*bool*/ TagPublishedFile( IntPtr ISteamScreenshots, uint hScreenshot, ulong unPublishedFileID ); + [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamScreenshots_IsScreenshotsHooked" )] + internal static extern bool /*bool*/ IsScreenshotsHooked( IntPtr ISteamScreenshots ); + [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamScreenshots_AddVRScreenshotToLibrary" )] + internal static extern ScreenshotHandle /*(ScreenshotHandle)*/ AddVRScreenshotToLibrary( IntPtr ISteamScreenshots, VRScreenshotType /*EVRScreenshotType*/ eType, string /*const char **/ pchFilename, string /*const char **/ pchVRFilename ); } internal static unsafe class ISteamMusic @@ -4855,6 +4949,16 @@ namespace SteamNative internal static extern void /*void*/ TriggerHapticPulse( IntPtr ISteamController, ulong controllerHandle, SteamControllerPad /*ESteamControllerPad*/ eTargetPad, ushort /*unsigned short*/ usDurationMicroSec ); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamController_TriggerRepeatedHapticPulse" )] internal static extern void /*void*/ TriggerRepeatedHapticPulse( IntPtr ISteamController, ulong controllerHandle, SteamControllerPad /*ESteamControllerPad*/ eTargetPad, ushort /*unsigned short*/ usDurationMicroSec, ushort /*unsigned short*/ usOffMicroSec, ushort /*unsigned short*/ unRepeat, uint /*unsigned int*/ nFlags ); + [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamController_GetGamepadIndexForController" )] + internal static extern int /*int*/ GetGamepadIndexForController( IntPtr ISteamController, ulong ulControllerHandle ); + [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamController_GetControllerForGamepadIndex" )] + internal static extern ControllerHandle_t /*(ControllerHandle_t)*/ GetControllerForGamepadIndex( IntPtr ISteamController, int /*int*/ nIndex ); + [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamController_GetMotionData" )] + internal static extern ControllerMotionData_t /*struct ControllerMotionData_t*/ GetMotionData( IntPtr ISteamController, ulong controllerHandle ); + [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamController_ShowDigitalActionOrigins" )] + internal static extern bool /*bool*/ ShowDigitalActionOrigins( IntPtr ISteamController, ulong controllerHandle, ulong digitalActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ); + [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamController_ShowAnalogActionOrigins" )] + internal static extern bool /*bool*/ ShowAnalogActionOrigins( IntPtr ISteamController, ulong controllerHandle, ulong analogActionHandle, float /*float*/ flScale, float /*float*/ flXPosition, float /*float*/ flYPosition ); } internal static unsafe class ISteamUGC @@ -4876,7 +4980,7 @@ namespace SteamNative [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCChildren" )] internal static extern bool /*bool*/ GetQueryUGCChildren( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ cMaxEntries ); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCStatistic" )] - internal static extern bool /*bool*/ GetQueryUGCStatistic( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out uint /*uint32 **/ pStatValue ); + internal static extern bool /*bool*/ GetQueryUGCStatistic( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index, ItemStatistic /*EItemStatistic*/ eStatType, out ulong /*uint64 **/ pStatValue ); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCNumAdditionalPreviews" )] internal static extern uint /*uint32*/ GetQueryUGCNumAdditionalPreviews( IntPtr ISteamUGC, ulong handle, uint /*uint32*/ index ); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamUGC_GetQueryUGCAdditionalPreview" )] @@ -4891,6 +4995,8 @@ namespace SteamNative internal static extern bool /*bool*/ AddRequiredTag( IntPtr ISteamUGC, ulong handle, string /*const char **/ pTagName ); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamUGC_AddExcludedTag" )] internal static extern bool /*bool*/ AddExcludedTag( IntPtr ISteamUGC, ulong handle, string /*const char **/ pTagName ); + [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamUGC_SetReturnOnlyIDs" )] + internal static extern bool /*bool*/ SetReturnOnlyIDs( IntPtr ISteamUGC, ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnOnlyIDs ); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamUGC_SetReturnKeyValueTags" )] internal static extern bool /*bool*/ SetReturnKeyValueTags( IntPtr ISteamUGC, ulong handle, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bReturnKeyValueTags ); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamUGC_SetReturnLongDescription" )] @@ -4985,6 +5091,12 @@ namespace SteamNative internal static extern bool /*bool*/ BInitWorkshopForGameServer( IntPtr ISteamUGC, uint unWorkshopDepotID, string /*const char **/ pszFolder ); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamUGC_SuspendDownloads" )] internal static extern void /*void*/ SuspendDownloads( IntPtr ISteamUGC, [MarshalAs(UnmanagedType.U1)] bool /*bool*/ bSuspend ); + [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamUGC_StartPlaytimeTracking" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ StartPlaytimeTracking( IntPtr ISteamUGC, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ); + [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamUGC_StopPlaytimeTracking" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ StopPlaytimeTracking( IntPtr ISteamUGC, IntPtr /*PublishedFileId_t **/ pvecPublishedFileID, uint /*uint32*/ unNumPublishedFileIDs ); + [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamUGC_StopPlaytimeTrackingForAllItems" )] + internal static extern SteamAPICall_t /*(SteamAPICall_t)*/ StopPlaytimeTrackingForAllItems( IntPtr ISteamUGC ); } internal static unsafe class ISteamAppList @@ -5120,7 +5232,7 @@ namespace SteamNative [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamInventory_GetItemDefinitionIDs" )] internal static extern bool /*bool*/ GetItemDefinitionIDs( IntPtr ISteamInventory, IntPtr /*SteamItemDef_t **/ pItemDefIDs, out uint /*uint32 **/ punItemDefIDsArraySize ); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_ISteamInventory_GetItemDefinitionProperty" )] - internal static extern bool /*bool*/ GetItemDefinitionProperty( IntPtr ISteamInventory, int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSize ); + internal static extern bool /*bool*/ GetItemDefinitionProperty( IntPtr ISteamInventory, int iDefinition, string /*const char **/ pchPropertyName, System.Text.StringBuilder /*char **/ pchValueBuffer, out uint /*uint32 **/ punValueBufferSizeOut ); } internal static unsafe class ISteamVideo @@ -5250,7 +5362,7 @@ namespace SteamNative internal static unsafe class SteamApi { [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_Init" )] - internal static extern void /*void*/ SteamAPI_Init(); + internal static extern bool /*bool*/ SteamAPI_Init(); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamAPI_RunCallbacks" )] internal static extern void /*void*/ SteamAPI_RunCallbacks(); [DllImportAttribute( "steam_api64.dll", EntryPoint = "SteamGameServer_RunCallbacks" )] diff --git a/Facepunch.Steamworks/SteamNative/SteamNative.SteamApi.cs b/Facepunch.Steamworks/SteamNative/SteamNative.SteamApi.cs index 229aa66..b5ffad2 100644 --- a/Facepunch.Steamworks/SteamNative/SteamNative.SteamApi.cs +++ b/Facepunch.Steamworks/SteamNative/SteamNative.SteamApi.cs @@ -51,10 +51,10 @@ namespace SteamNative return _pi.SteamApi_SteamAPI_GetHSteamUser(); } - // void - public void SteamAPI_Init() + // bool + public bool SteamAPI_Init() { - _pi.SteamApi_SteamAPI_Init(); + return _pi.SteamApi_SteamAPI_Init(); } // void diff --git a/Facepunch.Steamworks/SteamNative/SteamNative.SteamApps.cs b/Facepunch.Steamworks/SteamNative/SteamNative.SteamApps.cs index 96e0681..f510a17 100644 --- a/Facepunch.Steamworks/SteamNative/SteamNative.SteamApps.cs +++ b/Facepunch.Steamworks/SteamNative/SteamNative.SteamApps.cs @@ -173,6 +173,12 @@ namespace SteamNative return _pi.ISteamApps_GetEarliestPurchaseUnixTime( nAppID.Value ); } + // SteamAPICall_t + public SteamAPICall_t GetFileDetails( string pszFileName /*const char **/ ) + { + return _pi.ISteamApps_GetFileDetails( pszFileName ); + } + // uint public uint GetInstalledDepots( AppId_t appID /*AppId_t*/, IntPtr pvecDepots /*DepotId_t **/, uint cMaxDepots /*uint32*/ ) { diff --git a/Facepunch.Steamworks/SteamNative/SteamNative.SteamController.cs b/Facepunch.Steamworks/SteamNative/SteamNative.SteamController.cs index ae6345f..0a10a30 100644 --- a/Facepunch.Steamworks/SteamNative/SteamNative.SteamController.cs +++ b/Facepunch.Steamworks/SteamNative/SteamNative.SteamController.cs @@ -75,6 +75,12 @@ namespace SteamNative return _pi.ISteamController_GetConnectedControllers( (IntPtr) handlesOut ); } + // ControllerHandle_t + public ControllerHandle_t GetControllerForGamepadIndex( int nIndex /*int*/ ) + { + return _pi.ISteamController_GetControllerForGamepadIndex( nIndex ); + } + // ControllerActionSetHandle_t public ControllerActionSetHandle_t GetCurrentActionSet( ControllerHandle_t controllerHandle /*ControllerHandle_t*/ ) { @@ -99,6 +105,18 @@ namespace SteamNative return _pi.ISteamController_GetDigitalActionOrigins( controllerHandle.Value, actionSetHandle.Value, digitalActionHandle.Value, out originsOut ); } + // int + public int GetGamepadIndexForController( ControllerHandle_t ulControllerHandle /*ControllerHandle_t*/ ) + { + return _pi.ISteamController_GetGamepadIndexForController( ulControllerHandle.Value ); + } + + // ControllerMotionData_t + public ControllerMotionData_t GetMotionData( ControllerHandle_t controllerHandle /*ControllerHandle_t*/ ) + { + return _pi.ISteamController_GetMotionData( controllerHandle.Value ); + } + // bool public bool Init() { @@ -111,12 +129,24 @@ namespace SteamNative _pi.ISteamController_RunFrame(); } + // bool + public bool ShowAnalogActionOrigins( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, ControllerAnalogActionHandle_t analogActionHandle /*ControllerAnalogActionHandle_t*/, float flScale /*float*/, float flXPosition /*float*/, float flYPosition /*float*/ ) + { + return _pi.ISteamController_ShowAnalogActionOrigins( controllerHandle.Value, analogActionHandle.Value, flScale, flXPosition, flYPosition ); + } + // bool public bool ShowBindingPanel( ControllerHandle_t controllerHandle /*ControllerHandle_t*/ ) { return _pi.ISteamController_ShowBindingPanel( controllerHandle.Value ); } + // bool + public bool ShowDigitalActionOrigins( ControllerHandle_t controllerHandle /*ControllerHandle_t*/, ControllerDigitalActionHandle_t digitalActionHandle /*ControllerDigitalActionHandle_t*/, float flScale /*float*/, float flXPosition /*float*/, float flYPosition /*float*/ ) + { + return _pi.ISteamController_ShowDigitalActionOrigins( controllerHandle.Value, digitalActionHandle.Value, flScale, flXPosition, flYPosition ); + } + // bool public bool Shutdown() { diff --git a/Facepunch.Steamworks/SteamNative/SteamNative.SteamInventory.cs b/Facepunch.Steamworks/SteamNative/SteamNative.SteamInventory.cs index b99be90..47a5c3e 100644 --- a/Facepunch.Steamworks/SteamNative/SteamNative.SteamInventory.cs +++ b/Facepunch.Steamworks/SteamNative/SteamNative.SteamInventory.cs @@ -119,8 +119,8 @@ namespace SteamNative bool bSuccess = default( bool ); pchValueBuffer = string.Empty; System.Text.StringBuilder pchValueBuffer_sb = new System.Text.StringBuilder( 4096 ); - uint punValueBufferSize = 4096; - bSuccess = _pi.ISteamInventory_GetItemDefinitionProperty( iDefinition.Value, pchPropertyName, pchValueBuffer_sb, out punValueBufferSize ); + uint punValueBufferSizeOut = 4096; + bSuccess = _pi.ISteamInventory_GetItemDefinitionProperty( iDefinition.Value, pchPropertyName, pchValueBuffer_sb, out punValueBufferSizeOut ); if ( !bSuccess ) return bSuccess; pchValueBuffer = pchValueBuffer_sb.ToString(); return bSuccess; diff --git a/Facepunch.Steamworks/SteamNative/SteamNative.SteamRemoteStorage.cs b/Facepunch.Steamworks/SteamNative/SteamNative.SteamRemoteStorage.cs index ea1e753..f710438 100644 --- a/Facepunch.Steamworks/SteamNative/SteamNative.SteamRemoteStorage.cs +++ b/Facepunch.Steamworks/SteamNative/SteamNative.SteamRemoteStorage.cs @@ -223,7 +223,7 @@ namespace SteamNative } // bool - public bool GetQuota( IntPtr pnTotalBytes /*int32 **/, IntPtr puAvailableBytes /*int32 **/ ) + public bool GetQuota( IntPtr pnTotalBytes /*uint64 **/, IntPtr puAvailableBytes /*uint64 **/ ) { return _pi.ISteamRemoteStorage_GetQuota( (IntPtr) pnTotalBytes, (IntPtr) puAvailableBytes ); } diff --git a/Facepunch.Steamworks/SteamNative/SteamNative.SteamScreenshots.cs b/Facepunch.Steamworks/SteamNative/SteamNative.SteamScreenshots.cs index faa12fd..eb62257 100644 --- a/Facepunch.Steamworks/SteamNative/SteamNative.SteamScreenshots.cs +++ b/Facepunch.Steamworks/SteamNative/SteamNative.SteamScreenshots.cs @@ -45,12 +45,24 @@ namespace SteamNative return _pi.ISteamScreenshots_AddScreenshotToLibrary( pchFilename, pchThumbnailFilename, nWidth, nHeight ); } + // ScreenshotHandle + public ScreenshotHandle AddVRScreenshotToLibrary( VRScreenshotType eType /*EVRScreenshotType*/, string pchFilename /*const char **/, string pchVRFilename /*const char **/ ) + { + return _pi.ISteamScreenshots_AddVRScreenshotToLibrary( eType, pchFilename, pchVRFilename ); + } + // void public void HookScreenshots( bool bHook /*bool*/ ) { _pi.ISteamScreenshots_HookScreenshots( bHook ); } + // bool + public bool IsScreenshotsHooked() + { + return _pi.ISteamScreenshots_IsScreenshotsHooked(); + } + // bool public bool SetLocation( ScreenshotHandle hScreenshot /*ScreenshotHandle*/, string pchLocation /*const char **/ ) { diff --git a/Facepunch.Steamworks/SteamNative/SteamNative.SteamUGC.cs b/Facepunch.Steamworks/SteamNative/SteamNative.SteamUGC.cs index 8011a94..96b13bd 100644 --- a/Facepunch.Steamworks/SteamNative/SteamNative.SteamUGC.cs +++ b/Facepunch.Steamworks/SteamNative/SteamNative.SteamUGC.cs @@ -253,7 +253,7 @@ namespace SteamNative } // bool - public bool GetQueryUGCStatistic( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/, ItemStatistic eStatType /*EItemStatistic*/, out uint pStatValue /*uint32 **/ ) + public bool GetQueryUGCStatistic( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, uint index /*uint32*/, ItemStatistic eStatType /*EItemStatistic*/, out ulong pStatValue /*uint64 **/ ) { return _pi.ISteamUGC_GetQueryUGCStatistic( handle.Value, index, eStatType, out pStatValue ); } @@ -414,6 +414,12 @@ namespace SteamNative return _pi.ISteamUGC_SetReturnMetadata( handle.Value, bReturnMetadata ); } + // bool + public bool SetReturnOnlyIDs( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, bool bReturnOnlyIDs /*bool*/ ) + { + return _pi.ISteamUGC_SetReturnOnlyIDs( handle.Value, bReturnOnlyIDs ); + } + // bool public bool SetReturnTotalOnly( UGCQueryHandle_t handle /*UGCQueryHandle_t*/, bool bReturnTotalOnly /*bool*/ ) { @@ -438,6 +444,34 @@ namespace SteamNative return _pi.ISteamUGC_StartItemUpdate( nConsumerAppId.Value, nPublishedFileID.Value ); } + // with: Detect_VectorReturn + // SteamAPICall_t + public SteamAPICall_t StartPlaytimeTracking( PublishedFileId_t[] pvecPublishedFileID /*PublishedFileId_t **/ ) + { + var unNumPublishedFileIDs = (uint) pvecPublishedFileID.Length; + fixed ( PublishedFileId_t* pvecPublishedFileID_ptr = pvecPublishedFileID ) + { + return _pi.ISteamUGC_StartPlaytimeTracking( (IntPtr) pvecPublishedFileID_ptr, unNumPublishedFileIDs ); + } + } + + // with: Detect_VectorReturn + // SteamAPICall_t + public SteamAPICall_t StopPlaytimeTracking( PublishedFileId_t[] pvecPublishedFileID /*PublishedFileId_t **/ ) + { + var unNumPublishedFileIDs = (uint) pvecPublishedFileID.Length; + fixed ( PublishedFileId_t* pvecPublishedFileID_ptr = pvecPublishedFileID ) + { + return _pi.ISteamUGC_StopPlaytimeTracking( (IntPtr) pvecPublishedFileID_ptr, unNumPublishedFileIDs ); + } + } + + // SteamAPICall_t + public SteamAPICall_t StopPlaytimeTrackingForAllItems() + { + return _pi.ISteamUGC_StopPlaytimeTrackingForAllItems(); + } + // SteamAPICall_t public SteamAPICall_t SubmitItemUpdate( UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, string pchChangeNote /*const char **/ ) { diff --git a/Facepunch.Steamworks/SteamNative/SteamNative.SteamUser.cs b/Facepunch.Steamworks/SteamNative/SteamNative.SteamUser.cs index c3a1f10..562bf80 100644 --- a/Facepunch.Steamworks/SteamNative/SteamNative.SteamUser.cs +++ b/Facepunch.Steamworks/SteamNative/SteamNative.SteamUser.cs @@ -57,6 +57,18 @@ namespace SteamNative return _pi.ISteamUser_BIsBehindNAT(); } + // bool + public bool BIsPhoneIdentifying() + { + return _pi.ISteamUser_BIsPhoneIdentifying(); + } + + // bool + public bool BIsPhoneRequiringVerification() + { + return _pi.ISteamUser_BIsPhoneRequiringVerification(); + } + // bool public bool BIsPhoneVerified() { diff --git a/Facepunch.Steamworks/SteamNative/SteamNative.Structs.cs b/Facepunch.Steamworks/SteamNative/SteamNative.Structs.cs index ebe5baf..a1fe9b3 100644 --- a/Facepunch.Steamworks/SteamNative/SteamNative.Structs.cs +++ b/Facepunch.Steamworks/SteamNative/SteamNative.Structs.cs @@ -1509,30 +1509,6 @@ namespace SteamNative } } - [StructLayout( LayoutKind.Sequential, Pack = 8 )] - public struct RemoteStorageConflictResolution_t - { - public uint AppID; // m_nAppID AppId_t - public Result Result; // m_eResult enum EResult - public static RemoteStorageConflictResolution_t FromPointer( IntPtr p ) { return (RemoteStorageConflictResolution_t) Marshal.PtrToStructure( p, typeof(RemoteStorageConflictResolution_t) ); } - - [StructLayout( LayoutKind.Sequential, Pack = 4 )] - public struct PackSmall - { - public uint AppID; // m_nAppID AppId_t - public Result Result; // m_eResult enum EResult - - public static implicit operator RemoteStorageConflictResolution_t ( RemoteStorageConflictResolution_t.PackSmall d ) - { - return new RemoteStorageConflictResolution_t() - { - AppID = d.AppID, - Result = d.Result, - }; - } - } - } - [StructLayout( LayoutKind.Sequential, Pack = 8 )] public struct RemoteStorageFileShareResult_t { @@ -2764,6 +2740,38 @@ namespace SteamNative } } + [StructLayout( LayoutKind.Sequential, Pack = 8 )] + public struct FileDetailsResult_t + { + public Result Result; // m_eResult enum EResult + public ulong FileSize; // m_ulFileSize uint64 + [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 20)] + public char FileSHA; // m_FileSHA uint8 [20] + public uint Flags; // m_unFlags uint32 + public static FileDetailsResult_t FromPointer( IntPtr p ) { return (FileDetailsResult_t) Marshal.PtrToStructure( p, typeof(FileDetailsResult_t) ); } + + [StructLayout( LayoutKind.Sequential, Pack = 4 )] + public struct PackSmall + { + public Result Result; // m_eResult enum EResult + public ulong FileSize; // m_ulFileSize uint64 + [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 20)] + public char FileSHA; // m_FileSHA uint8 [20] + public uint Flags; // m_unFlags uint32 + + public static implicit operator FileDetailsResult_t ( FileDetailsResult_t.PackSmall d ) + { + return new FileDetailsResult_t() + { + Result = d.Result, + FileSize = d.FileSize, + FileSHA = d.FileSHA, + Flags = d.Flags, + }; + } + } + } + [StructLayout( LayoutKind.Sequential, Pack = 8 )] public struct P2PSessionState_t { @@ -3235,6 +3243,54 @@ namespace SteamNative } } + [StructLayout( LayoutKind.Sequential, Pack = 8 )] + public struct ControllerMotionData_t + { + public float RotQuatX; // rotQuatX float + public float RotQuatY; // rotQuatY float + public float RotQuatZ; // rotQuatZ float + public float RotQuatW; // rotQuatW float + public float PosAccelX; // posAccelX float + public float PosAccelY; // posAccelY float + public float PosAccelZ; // posAccelZ float + public float RotVelX; // rotVelX float + public float RotVelY; // rotVelY float + public float RotVelZ; // rotVelZ float + public static ControllerMotionData_t FromPointer( IntPtr p ) { return (ControllerMotionData_t) Marshal.PtrToStructure( p, typeof(ControllerMotionData_t) ); } + + [StructLayout( LayoutKind.Sequential, Pack = 4 )] + public struct PackSmall + { + public float RotQuatX; // rotQuatX float + public float RotQuatY; // rotQuatY float + public float RotQuatZ; // rotQuatZ float + public float RotQuatW; // rotQuatW float + public float PosAccelX; // posAccelX float + public float PosAccelY; // posAccelY float + public float PosAccelZ; // posAccelZ float + public float RotVelX; // rotVelX float + public float RotVelY; // rotVelY float + public float RotVelZ; // rotVelZ float + + public static implicit operator ControllerMotionData_t ( ControllerMotionData_t.PackSmall d ) + { + return new ControllerMotionData_t() + { + RotQuatX = d.RotQuatX, + RotQuatY = d.RotQuatY, + RotQuatZ = d.RotQuatZ, + RotQuatW = d.RotQuatW, + PosAccelX = d.PosAccelX, + PosAccelY = d.PosAccelY, + PosAccelZ = d.PosAccelZ, + RotVelX = d.RotVelX, + RotVelY = d.RotVelY, + RotVelZ = d.RotVelZ, + }; + } + } + } + [StructLayout( LayoutKind.Sequential, Pack = 8 )] public struct SteamUGCDetails_t { @@ -3587,6 +3643,48 @@ namespace SteamNative } } + [StructLayout( LayoutKind.Sequential, Pack = 8 )] + public struct StartPlaytimeTrackingResult_t + { + public Result Result; // m_eResult enum EResult + public static StartPlaytimeTrackingResult_t FromPointer( IntPtr p ) { return (StartPlaytimeTrackingResult_t) Marshal.PtrToStructure( p, typeof(StartPlaytimeTrackingResult_t) ); } + + [StructLayout( LayoutKind.Sequential, Pack = 4 )] + public struct PackSmall + { + public Result Result; // m_eResult enum EResult + + public static implicit operator StartPlaytimeTrackingResult_t ( StartPlaytimeTrackingResult_t.PackSmall d ) + { + return new StartPlaytimeTrackingResult_t() + { + Result = d.Result, + }; + } + } + } + + [StructLayout( LayoutKind.Sequential, Pack = 8 )] + public struct StopPlaytimeTrackingResult_t + { + public Result Result; // m_eResult enum EResult + public static StopPlaytimeTrackingResult_t FromPointer( IntPtr p ) { return (StopPlaytimeTrackingResult_t) Marshal.PtrToStructure( p, typeof(StopPlaytimeTrackingResult_t) ); } + + [StructLayout( LayoutKind.Sequential, Pack = 4 )] + public struct PackSmall + { + public Result Result; // m_eResult enum EResult + + public static implicit operator StopPlaytimeTrackingResult_t ( StopPlaytimeTrackingResult_t.PackSmall d ) + { + return new StopPlaytimeTrackingResult_t() + { + Result = d.Result, + }; + } + } + } + [StructLayout( LayoutKind.Sequential, Pack = 8 )] public struct SteamAppInstalled_t { diff --git a/Generator/CodeWriter.PlatformClass.cs b/Generator/CodeWriter.PlatformClass.cs index 0349498..5d62ebc 100644 --- a/Generator/CodeWriter.PlatformClass.cs +++ b/Generator/CodeWriter.PlatformClass.cs @@ -98,6 +98,10 @@ namespace Generator StartBlock( $"public virtual {ret.Return()} {classname}_{methodName}({argstring})" ); + // var vars = string.Join( " + \",\" + ", arguments.Where( x => !x.InteropParameter( true, true ).StartsWith( "out " ) ).Select( x => x.Name ) ); + // if ( vars != "" ) vars = "\" + " + vars + " + \""; + // WriteLine( $"Console.WriteLine( \"{classname}_{methodName}( {vars} )\" );" ); + if ( methodDef.NeedsSelfPointer ) { WriteLine( $"if ( _ptr == null ) throw new System.Exception( \"{classname} _ptr is null!\" );" ); diff --git a/Generator/CodeWriter.Struct.cs b/Generator/CodeWriter.Struct.cs index 74734ed..6d573c4 100644 --- a/Generator/CodeWriter.Struct.cs +++ b/Generator/CodeWriter.Struct.cs @@ -88,6 +88,13 @@ namespace Generator WriteLine( $"[MarshalAs(UnmanagedType.ByValTStr, SizeConst = {num})]" ); } + if ( t.StartsWith( "uint8 " ) && t.Contains( "[" ) ) + { + var num = t.Replace( "uint8", "" ).Trim( '[', ']', ' ' ); + t = "char"; + WriteLine( $"[MarshalAs(UnmanagedType.ByValTStr, SizeConst = {num})]" ); + } + if ( t.StartsWith( "CSteamID " ) && t.Contains( "[" ) ) { var num = t.Replace( "CSteamID", "" ).Trim( '[', ']', ' ' ); diff --git a/Generator/CodeWriter.cs b/Generator/CodeWriter.cs index c26e731..ed39734 100644 --- a/Generator/CodeWriter.cs +++ b/Generator/CodeWriter.cs @@ -23,7 +23,7 @@ namespace Generator { ClassName = "SteamApi", Name = "SteamAPI_Init", - ReturnType = "void", + ReturnType = "bool", NeedsSelfPointer = false } );