示例#1
0
        public void GetPublishedMods(int app_id, Action <WorkshopItem[]> callback)
        {
            this.Call(delegate() {
                EUserUGCList list           = EUserUGCList.k_EUserUGCList_Published;
                EUGCMatchingUGCType type    = EUGCMatchingUGCType.k_EUGCMatchingUGCType_All;
                EUserUGCListSortOrder order = EUserUGCListSortOrder.k_EUserUGCListSortOrder_CreationOrderAsc;
                uint page = 1; //@ToDo iterate/count up! A single page has a maximum of 50 items. is the result-count under 50, it's the last page!
                UGCQueryHandle_t handle = SteamUGC.CreateQueryUserUGCRequest(this.GetAccountID(), list, type, order, this.GetCreatorApp(), new AppId_t((uint)((uint)app_id & 0xFFFFFFul)), page);

                CallResult <SteamUGCQueryCompleted_t> .Create(delegate(SteamUGCQueryCompleted_t pCallback, bool bIOFailure) {
                    WorkshopItem[] result = new WorkshopItem[pCallback.m_unTotalMatchingResults];

                    for (uint index = 0; index < pCallback.m_unTotalMatchingResults; index++)
                    {
                        SteamUGCDetails_t details;

                        if (SteamUGC.GetQueryUGCResult(handle, index, out details))
                        {
                            result[index] = new WorkshopItem(details);
                        }
                    }

                    callback(result);
                    SteamUGC.ReleaseQueryUGCRequest(handle);
                }).Set(SteamUGC.SendQueryUGCRequest(handle));
            });
        }
示例#2
0
 internal WorkshopQueryUser(uint unAccountID, EUserUGCList eListType, EUGCMatchingUGCType eMatchingUGCType, EUserUGCListSortOrder eSortOrder)
 {
     _accountID = new AccountID_t(unAccountID);
     _listType  = eListType;
     _type      = eMatchingUGCType;
     _sortOrder = eSortOrder;
 }
 /// <summary>
 /// <para> Query UGC associated with a user. Creator app id or consumer app id must be valid and be set to the current running app. unPage should start at 1.</para>
 /// </summary>
 public static UGCQueryHandle_t CreateQueryUserUGCRequest(AccountID_t unAccountID, EUserUGCList eListType, EUGCMatchingUGCType eMatchingUGCType, EUserUGCListSortOrder eSortOrder, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint unPage)
 {
     InteropHelp.TestIfAvailableGameServer();
     return((UGCQueryHandle_t)NativeMethods.ISteamUGC_CreateQueryUserUGCRequest(CSteamGameServerAPIContext.GetSteamUGC(), unAccountID, eListType, eMatchingUGCType, eSortOrder, nCreatorAppID, nConsumerAppID, unPage));
 }
		/// <summary>
		/// <para> Query UGC associated with a user. Creator app id or consumer app id must be valid and be set to the current running app. unPage should start at 1.</para>
		/// </summary>
		public static UGCQueryHandle_t CreateQueryUserUGCRequest(AccountID_t unAccountID, EUserUGCList eListType, EUGCMatchingUGCType eMatchingUGCType, EUserUGCListSortOrder eSortOrder, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint unPage) {
			InteropHelp.TestIfAvailableGameServer();
			return (UGCQueryHandle_t)NativeMethods.ISteamGameServerUGC_CreateQueryUserUGCRequest(unAccountID, eListType, eMatchingUGCType, eSortOrder, nCreatorAppID, nConsumerAppID, unPage);
		}
 public UInt64 CreateQueryUserUGCRequest(UInt32 unAccountID, EUserUGCList eListType, EUGCMatchingUGCType eMatchingUGCType, EUserUGCListSortOrder eSortOrder, UInt32 nCreatorAppID, UInt32 nConsumerAppID, UInt32 unPage)
 {
     return(this.GetFunction <NativeCreateQueryUserUGCRequestUEEEUUU>(this.Functions.CreateQueryUserUGCRequest0)(this.ObjectAddress, unAccountID, eListType, eMatchingUGCType, eSortOrder, nCreatorAppID, nConsumerAppID, unPage));
 }
示例#6
0
		public static extern ulong ISteamGameServerUGC_CreateQueryUserUGCRequest(AccountID_t unAccountID, EUserUGCList eListType, EUGCMatchingUGCType eMatchingUGCType, EUserUGCListSortOrder eSortOrder, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint unPage);
示例#7
0
 /// Query UGC associated with a user. Creator app id or consumer app id must be valid and be set to the current running app. unPage should start at 1.
 public static UGCQueryHandle_t CreateQueryUserUGCRequest(AccountID_t unAccountID, EUserUGCList eListType, EUGCMatchingUGCType eMatchingUGCType, EUserUGCListSortOrder eSortOrder, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint unPage)
 {
     return((UGCQueryHandle_t)0);
 }
        public UGCQueryHandle CreateQueryUserUGCRequest(AccountID accountId, UserUGCList listType, EUGCMatchingUGCType matchingUGCType, EUserUGCListSortOrder sortOrder, AppID creatorAppID, AppID consumerAppID, uint page)
        {
            CheckIfUsable();

            return(new UGCQueryHandle(NativeMethods.UGC_CreateQueryUserUGCRequest(accountId.AsUInt32, (int)listType, (int)matchingUGCType, (int)sortOrder, creatorAppID.AsUInt32, creatorAppID.AsUInt32, page)));
        }
示例#9
0
        public static HeathenWorkshopItemQuery Create(AccountID_t account, EUserUGCList listType, EUGCMatchingUGCType matchingType, EUserUGCListSortOrder sortOrder, AppId_t creatorApp, AppId_t consumerApp)
        {
            HeathenWorkshopItemQuery nQuery = new HeathenWorkshopItemQuery
            {
                matchedRecordCount = 0,
                PageCount          = 1,
                isAllQuery         = false,
                isUserQuery        = true,
                listType           = listType,
                sortOrder          = sortOrder,
                matchingType       = matchingType,
                creatorApp         = creatorApp,
                consumerApp        = consumerApp,
                account            = account,
                Page   = 1,
                handle = SteamUGC.CreateQueryUserUGCRequest(account, listType, matchingType, sortOrder, creatorApp, consumerApp, 1)
            };

            return(nQuery);
        }
        public UGCQueryHandle CreateQueryUserUGCRequest(AccountID accountId, UserUGCList listType, EUGCMatchingUGCType matchingUGCType, EUserUGCListSortOrder sortOrder, AppID creatorAppID, AppID consumerAppID, uint page)
        {
            CheckIfUsable();

            return new UGCQueryHandle(NativeMethods.UGC_CreateQueryUserUGCRequest(accountId.AsUInt32, (int)listType, (int)matchingUGCType, (int)sortOrder, creatorAppID.AsUInt32, creatorAppID.AsUInt32, page));
        }
 // Methods
 public static UGCQueryHandle_t CreateQueryUserUGCRequest(AccountID_t unAccountID, EUserUGCList eListType, EUGCMatchingUGCType eMatchingUGCType, EUserUGCListSortOrder eSortOrder, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint unPage) => default; // 0x000000018079A220-0x000000018079A310