Example #1
0
        public BulkQueryRequest(Item item, ILanguage language, IStaticItemCategoryService staticItemCategoryService)
        {
            Exchange.Status.Option = StatusType.Online;

            var itemType = item.GetType();

            if (itemType == typeof(CurrencyItem))
            {
                var itemCategory = "Currency";

                if (item.Name.Contains(language.KeywordCatalyst))
                {
                    itemCategory = "Catalysts";
                }
                else if (item.Name.Contains(language.KeywordOil))
                {
                    itemCategory = "Oils";
                }
                else if (item.Name.Contains(language.KeywordIncubator))
                {
                    itemCategory = "Incubators";
                }
                else if (item.Name.Contains(language.KeywordScarab))
                {
                    itemCategory = "Scarabs";
                }
                else if (item.Name.Contains(language.KeywordResonator))
                {
                    itemCategory = "DelveResonators";
                }
                else if (item.Name.Contains(language.KeywordFossil))
                {
                    itemCategory = "DelveFossils";
                }
                else if (item.Name.Contains(language.KeywordVial))
                {
                    itemCategory = "Vials";
                }
                else if (item.Name.Contains(language.KeywordEssence))
                {
                    itemCategory = "Essences";
                }

                var itemId = staticItemCategoryService.Categories.Single(x => x.Id == itemCategory)
                             .Entries
                             .Single(x => x.Text == item.Name)
                             .Id;

                Exchange.Want.Add(itemId);
                Exchange.Have.Add("chaos"); // TODO: Add support for other currency types?
            }
            else if (itemType == typeof(DivinationCardItem))
            {
                var itemId = staticItemCategoryService.Categories.Where(c => c.Id == "Cards").FirstOrDefault().Entries.Where(c => c.Text == item.Name).FirstOrDefault().Id;
                Exchange.Want.Add(itemId);
                Exchange.Have.Add("chaos");
            }
        }
Example #2
0
 public TradeClient(ILogger logger,
                    ILanguageProvider languageProvider,
                    IHttpClientProvider httpClientProvider,
                    IStaticItemCategoryService staticItemCategoryService,
                    SidekickSettings configuration,
                    IPoeApiClient poeApiClient,
                    INativeBrowser nativeBrowser)
 {
     this.logger                    = logger;
     this.languageProvider          = languageProvider;
     this.httpClientProvider        = httpClientProvider;
     this.staticItemCategoryService = staticItemCategoryService;
     this.configuration             = configuration;
     this.poeApiClient              = poeApiClient;
     this.nativeBrowser             = nativeBrowser;
 }
Example #3
0
 public MapService(IStaticItemCategoryService staticItemCategoryService)
 {
     this.staticItemCategoryService = staticItemCategoryService;
 }