public OriginGameMetadata DownloadGameMetadata(string id) { var data = new OriginGameMetadata() { StoreDetails = OriginApiClient.GetGameStoreData(id) }; var imageUrl = data.StoreDetails.imageServer + data.StoreDetails.i18n.packArtLarge; var imageData = HttpDownloader.DownloadData(imageUrl); var imageName = Guid.NewGuid() + Path.GetExtension(new Uri(imageUrl).AbsolutePath); data.Image = new MetadataFile(imageName, imageData); if (!string.IsNullOrEmpty(data.StoreDetails.offerPath)) { data.StoreMetadata = OriginApiClient.GetStoreMetadata(data.StoreDetails.offerPath); var bkData = data.StoreMetadata?.gamehub.components.items?.FirstOrDefault(a => a.ContainsKey("origin-store-pdp-hero")); if (bkData != null) { var bk = (bkData["origin-store-pdp-hero"] as JObject).ToObject <Dictionary <string, object> >(); if (bk.TryGetValue("background-image", out var backgroundUrl)) { data.BackgroundImage = backgroundUrl.ToString(); } } } return(data); }
public OriginGameMetadata DownloadGameMetadata(string id) { var data = new OriginGameMetadata() { StoreDetails = OriginApiClient.GetGameStoreData(id) }; data.CoverImage = new MetadataFile(data.StoreDetails.imageServer + data.StoreDetails.i18n.packArtLarge); if (!string.IsNullOrEmpty(data.StoreDetails.offerPath)) { data.StoreMetadata = OriginApiClient.GetStoreMetadata(data.StoreDetails.offerPath); var bkData = data.StoreMetadata?.gamehub.components.items?.FirstOrDefault(a => a.ContainsKey("origin-store-pdp-hero")); if (bkData != null) { dynamic test = bkData["origin-store-pdp-hero"]; var background = test["background-image"]; if (background != null) { data.BackgroundImage = new MetadataFile(background.ToString()); } } } return(data); }
public OriginGameMetadata DownloadGameMetadata(string id) { var data = new OriginGameMetadata() { StoreDetails = OriginApiClient.GetGameStoreData(id) }; var imageUrl = data.StoreDetails.imageServer + data.StoreDetails.i18n.packArtLarge; var imageData = HttpDownloader.DownloadData(imageUrl); var imageName = Guid.NewGuid() + Path.GetExtension(new Uri(imageUrl).AbsolutePath); data.Image = new MetadataFile( string.Format("images/origin/{0}/{1}", id.Replace(":", ""), imageName), imageName, imageData ); return(data); }