public void FromGameServerItem(gameserveritem_t item) { serverID = item.m_steamID; serverName = item.GetServerName(); serverDescription = item.GetGameDescription(); mapName = item.GetMap(); isPasswordProtected = item.m_bPassword; isVAC = item.m_bSecure; maxPlayerCount = item.m_nMaxPlayers; currentPlayerCount = item.m_nPlayers; botPlayers = item.m_nBotPlayers; ping = item.m_nPing; serverVersion = item.m_nServerVersion; tags = item.GetGameTags(); address = item.m_NetAdr; lastTimePlayed = SteamUtilities.ConvertUnixDate(item.m_ulTimeLastPlayed); }
public HeathenWorkshopReadCommunityItem(SteamUGCDetails_t itemDetails) { SourceItemDetails = itemDetails; if (itemDetails.m_eFileType != EWorkshopFileType.k_EWorkshopFileTypeCommunity) { Debug.LogWarning("HeathenWorkshopReadItem is designed to display File Type = Community Item, this item is not a community item and may not load correctly."); } m_RemoteStorageDownloadUGCResult = CallResult <RemoteStorageDownloadUGCResult_t> .Create(HandleUGCDownload); TargetApp = itemDetails.m_nConsumerAppID; FileId = itemDetails.m_nPublishedFileId; Title = itemDetails.m_rgchTitle; Description = itemDetails.m_rgchDescription; Visibility = itemDetails.m_eVisibility; Author = new CSteamID(itemDetails.m_ulSteamIDOwner); CreatedOn = SteamUtilities.ConvertUnixDate(itemDetails.m_rtimeCreated); LastUpdated = SteamUtilities.ConvertUnixDate(itemDetails.m_rtimeUpdated); UpVotes = itemDetails.m_unVotesUp; DownVotes = itemDetails.m_unVotesDown; VoteScore = itemDetails.m_flScore; IsBanned = itemDetails.m_bBanned; IsTagsTruncated = itemDetails.m_bTagsTruncated; FileSize = itemDetails.m_nFileSize; Visibility = itemDetails.m_eVisibility; Tags.AddRange(itemDetails.m_rgchTags.Split(',')); uint state = SteamUGC.GetItemState(FileId); StateFlags = (EItemState)state; IsSubscribed = SteamUtilities.WorkshopItemStateHasFlag(StateFlags, EItemState.k_EItemStateSubscribed); if (itemDetails.m_nPreviewFileSize > 0) { var previewCall = SteamRemoteStorage.UGCDownload(itemDetails.m_hPreviewFile, 1); m_RemoteStorageDownloadUGCResult.Set(previewCall, HandleUGCDownloadPreviewFile); } else { Debug.LogWarning("Item [" + Title + "] has no preview file!"); } }