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)); }); }
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)); }
public static extern ulong ISteamGameServerUGC_CreateQueryUserUGCRequest(AccountID_t unAccountID, EUserUGCList eListType, EUGCMatchingUGCType eMatchingUGCType, EUserUGCListSortOrder eSortOrder, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint unPage);
/// 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))); }
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