mirror of
https://github.com/Facepunch/Facepunch.Steamworks.git
synced 2025-02-26 13:31:17 +03:00
Merge pull request #432 from kamyker/faster-ugc-query
Ability to disable default stats loading to speed up ugc query
This commit is contained in:
commit
c25bc70d53
@ -150,6 +150,7 @@ namespace Steamworks.Ugc
|
||||
TotalCount = (int)result.Value.TotalMatchingResults,
|
||||
CachedData = result.Value.CachedData,
|
||||
ReturnsKeyValueTags = WantsReturnKeyValueTags ?? false,
|
||||
ReturnsDefaultStats = WantsDefaultStats ?? true, //true by default
|
||||
};
|
||||
}
|
||||
|
||||
@ -302,5 +303,15 @@ namespace Steamworks.Ugc
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
#region LoadingBehaviour
|
||||
|
||||
bool? WantsDefaultStats; //true by default
|
||||
/// <summary>
|
||||
/// Set to false to disable, by default following stats are loaded: NumSubscriptions, NumFavorites, NumFollowers, NumUniqueSubscriptions, NumUniqueFavorites, NumUniqueFollowers, NumUniqueWebsiteViews, ReportScore, NumSecondsPlayed, NumPlaytimeSessions, NumComments, NumSecondsPlayedDuringTimePeriod, NumPlaytimeSessionsDuringTimePeriod
|
||||
/// </summary>
|
||||
public QueryType WithDefaultStats( bool b ) { WantsDefaultStats = b; return this; }
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
@ -13,6 +13,8 @@ namespace Steamworks.Ugc
|
||||
public bool CachedData;
|
||||
|
||||
internal bool ReturnsKeyValueTags;
|
||||
internal bool ReturnsDefaultStats;
|
||||
|
||||
public IEnumerable<Item> Entries
|
||||
{
|
||||
get
|
||||
@ -25,19 +27,23 @@ namespace Steamworks.Ugc
|
||||
{
|
||||
var item = Item.From( details );
|
||||
|
||||
item.NumSubscriptions = GetStat( i, ItemStatistic.NumSubscriptions );
|
||||
item.NumFavorites = GetStat( i, ItemStatistic.NumFavorites );
|
||||
item.NumFollowers = GetStat( i, ItemStatistic.NumFollowers );
|
||||
item.NumUniqueSubscriptions = GetStat( i, ItemStatistic.NumUniqueSubscriptions );
|
||||
item.NumUniqueFavorites = GetStat( i, ItemStatistic.NumUniqueFavorites );
|
||||
item.NumUniqueFollowers = GetStat( i, ItemStatistic.NumUniqueFollowers );
|
||||
item.NumUniqueWebsiteViews = GetStat( i, ItemStatistic.NumUniqueWebsiteViews );
|
||||
item.ReportScore = GetStat( i, ItemStatistic.ReportScore );
|
||||
item.NumSecondsPlayed = GetStat( i, ItemStatistic.NumSecondsPlayed );
|
||||
item.NumPlaytimeSessions = GetStat( i, ItemStatistic.NumPlaytimeSessions );
|
||||
item.NumComments = GetStat( i, ItemStatistic.NumComments );
|
||||
item.NumSecondsPlayedDuringTimePeriod = GetStat( i, ItemStatistic.NumSecondsPlayedDuringTimePeriod );
|
||||
item.NumPlaytimeSessionsDuringTimePeriod = GetStat( i, ItemStatistic.NumPlaytimeSessionsDuringTimePeriod );
|
||||
|
||||
if ( ReturnsDefaultStats )
|
||||
{
|
||||
item.NumSubscriptions = GetStat( i, ItemStatistic.NumSubscriptions );
|
||||
item.NumFavorites = GetStat( i, ItemStatistic.NumFavorites );
|
||||
item.NumFollowers = GetStat( i, ItemStatistic.NumFollowers );
|
||||
item.NumUniqueSubscriptions = GetStat( i, ItemStatistic.NumUniqueSubscriptions );
|
||||
item.NumUniqueFavorites = GetStat( i, ItemStatistic.NumUniqueFavorites );
|
||||
item.NumUniqueFollowers = GetStat( i, ItemStatistic.NumUniqueFollowers );
|
||||
item.NumUniqueWebsiteViews = GetStat( i, ItemStatistic.NumUniqueWebsiteViews );
|
||||
item.ReportScore = GetStat( i, ItemStatistic.ReportScore );
|
||||
item.NumSecondsPlayed = GetStat( i, ItemStatistic.NumSecondsPlayed );
|
||||
item.NumPlaytimeSessions = GetStat( i, ItemStatistic.NumPlaytimeSessions );
|
||||
item.NumComments = GetStat( i, ItemStatistic.NumComments );
|
||||
item.NumSecondsPlayedDuringTimePeriod = GetStat( i, ItemStatistic.NumSecondsPlayedDuringTimePeriod );
|
||||
item.NumPlaytimeSessionsDuringTimePeriod = GetStat( i, ItemStatistic.NumPlaytimeSessionsDuringTimePeriod );
|
||||
}
|
||||
|
||||
if ( SteamUGC.Internal.GetQueryUGCPreviewURL( Handle, i, out string preview ) )
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user