public void PublishVideo(WorkshopVideoProviders videoProviders, string videoAccount, string videoIdentifier,
                          string previewFile, AppID consumerAppId, string title, string description,
                          RemoteStoragePublishedFileVisibility visibility, IList <string> tags)
 {
     CheckIfUsable();
     using (SteamParamStringArray tagArray = new SteamParamStringArray(tags))
     {
         NativeMethods.Cloud_PublishVideo((int)videoProviders, videoAccount, videoIdentifier, previewFile, consumerAppId.AsUInt32, title,
                                          description, (int)visibility, tagArray.UnmanagedMemory);
     }
 }
 public void PublishWorkshopFile(string fileName, string previewFile, AppID consumerAppId,
                                 string title, string description, RemoteStoragePublishedFileVisibility visibility,
                                 IList <string> tags, WorkshopFileType workshopFileType)
 {
     CheckIfUsable();
     using (SteamParamStringArray tagsArray = new SteamParamStringArray(tags))
     {
         NativeMethods.Cloud_PublishWorkshopFile(fileName, previewFile, consumerAppId.AsUInt32,
                                                 title, description, (int)visibility, tagsArray.UnmanagedMemory, (int)workshopFileType);
     }
 }
Exemple #3
0
 // bool
 public bool UpdatePublishedFileVisibility(PublishedFileUpdateHandle_t updateHandle /*PublishedFileUpdateHandle_t*/, RemoteStoragePublishedFileVisibility eVisibility /*ERemoteStoragePublishedFileVisibility*/)
 {
     return(platform.ISteamRemoteStorage_UpdatePublishedFileVisibility(updateHandle.Value, eVisibility));
 }
Exemple #4
0
        // SteamAPICall_t
        // using: Detect_StringArray
        public CallbackHandle PublishWorkshopFile(string pchFile /*const char **/, string pchPreviewFile /*const char **/, AppId_t nConsumerAppId /*AppId_t*/, string pchTitle /*const char **/, string pchDescription /*const char **/, RemoteStoragePublishedFileVisibility eVisibility /*ERemoteStoragePublishedFileVisibility*/, string[] pTags /*struct SteamParamStringArray_t **/, WorkshopFileType eWorkshopFileType /*EWorkshopFileType*/, Action <RemoteStoragePublishFileProgress_t, bool> CallbackFunction = null /*Action<RemoteStoragePublishFileProgress_t, bool>*/)
        {
            SteamAPICall_t callback = 0;
            // Create strings
            var nativeStrings = new IntPtr[pTags.Length];

            for (int i = 0; i < pTags.Length; i++)
            {
                nativeStrings[i] = Marshal.StringToHGlobalAnsi(pTags[i]);
            }
            try
            {
                // Create string array
                var size        = Marshal.SizeOf(typeof(IntPtr)) * nativeStrings.Length;
                var nativeArray = Marshal.AllocHGlobal(size);
                Marshal.Copy(nativeStrings, 0, nativeArray, nativeStrings.Length);

                // Create SteamParamStringArray_t
                var tags = new SteamParamStringArray_t();
                tags.Strings    = nativeArray;
                tags.NumStrings = pTags.Length;
                callback        = platform.ISteamRemoteStorage_PublishWorkshopFile(pchFile, pchPreviewFile, nConsumerAppId.Value, pchTitle, pchDescription, eVisibility, ref tags, eWorkshopFileType);
            }
            finally
            {
                foreach (var x in nativeStrings)
                {
                    Marshal.FreeHGlobal(x);
                }
            }

            if (CallbackFunction == null)
            {
                return(null);
            }

            return(RemoteStoragePublishFileProgress_t.CallResult(steamworks, callback, CallbackFunction));
        }
 // bool
 public bool SetItemVisibility(UGCUpdateHandle_t handle /*UGCUpdateHandle_t*/, RemoteStoragePublishedFileVisibility eVisibility /*ERemoteStoragePublishedFileVisibility*/)
 {
     return(platform.ISteamUGC_SetItemVisibility(handle.Value, eVisibility));
 }
 public void PublishVideo(WorkshopVideoProviders videoProviders, string videoAccount, string videoIdentifier, 
     string previewFile, AppID consumerAppId, string title, string description, 
     RemoteStoragePublishedFileVisibility visibility, IList<string> tags)
 {
     CheckIfUsable();
     using (SteamParamStringArray tagArray = new SteamParamStringArray(tags))
     {
         NativeMethods.Cloud_PublishVideo((int)videoProviders, videoAccount, videoIdentifier, previewFile, consumerAppId.AsUInt32, title,
             description, (int)visibility, tagArray.UnmanagedMemory);
     }
 }
 public bool UpdatePublishedFileVisibility(PublishedFileUpdateHandle updateHandle, RemoteStoragePublishedFileVisibility visibility)
 {
     CheckIfUsable();
     return NativeMethods.Cloud_UpdatePublishedFileVisibility(updateHandle.AsUInt64, (int)visibility);
 }
 public void PublishWorkshopFile(string fileName, string previewFile, AppID consumerAppId,
     string title, string description, RemoteStoragePublishedFileVisibility visibility,
     IList<string> tags, WorkshopFileType workshopFileType)
 {
     CheckIfUsable();
     using (SteamParamStringArray tagsArray = new SteamParamStringArray(tags))
     {
         NativeMethods.Cloud_PublishWorkshopFile(fileName, previewFile, consumerAppId.AsUInt32,
             title, description, (int)visibility, tagsArray.UnmanagedMemory, (int)workshopFileType);
     }
 }
 public bool UpdatePublishedFileVisibility(PublishedFileUpdateHandle updateHandle, RemoteStoragePublishedFileVisibility visibility)
 {
     CheckIfUsable();
     return(NativeMethods.Cloud_UpdatePublishedFileVisibility(updateHandle.AsUInt64, (int)visibility));
 }