private void AddPurchaseOffer(List <BuyOfferPurchase> allOffers, Offer offer, string itemName, long expectedProfit = 0) { Dictionary <string, int> roublesToSwap = _profileController.GetRoublesFromInventory((int)offer.requirementsCost); if (roublesToSwap.Count <= 0) { Log($"We're unable to buy {itemName}! We are poor :("); return; } //var itemsToSwap = CalculateRoubles(offer.items.Count, roubles, offer); Log($"We're able to buy {itemName}!"); if (roublesToSwap.Count >= 1) { var itemsToSwap = roublesToSwap.Select(r => new ItemToSwap() { id = r.Key, count = r.Value }).ToList(); //var itemsToSwap = CalculateRoubles(offer.items.Count, roubles, offer); Log($"We're able to buy {itemName}!"); var purchaseOffer = new BuyOfferPurchase(offer._id, 1, itemsToSwap) { Offer = offer, ExpectedProfit = expectedProfit, TotalIndividualItems = offer.items.Count }; allOffers.Add(purchaseOffer); } else { Log($"Unable to find any offers that will make us profit for item {itemName}"); Thread.Sleep(LinkManager.Timer); } }
public bool BuyIndividually(BuyOfferPurchase item) => BuyItemsInternal(new List <BuyOfferPurchase> { item });