Пример #1
0
        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);
        }
Пример #3
0
        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);
        }