diff --git a/ArchiSteamFarm/Bot.cs b/ArchiSteamFarm/Bot.cs index ea56f6ea2..2d812e647 100755 --- a/ArchiSteamFarm/Bot.cs +++ b/ArchiSteamFarm/Bot.cs @@ -973,7 +973,7 @@ namespace ArchiSteamFarm { } bool alreadyHandled = false; - foreach (Bot bot in Bots.Values.Where(bot => (bot != this) && bot.SteamClient.IsConnected && result.Items.Keys.Any(packageID => !bot.OwnedPackageIDs.Contains(packageID)))) { + foreach (Bot bot in Bots.Values.Where(bot => (bot != this) && bot.SteamClient.IsConnected && ((result.Items.Count == 0) || result.Items.Keys.Any(packageID => !bot.OwnedPackageIDs.Contains(packageID))))) { ArchiHandler.PurchaseResponseCallback otherResult = await bot.ArchiHandler.RedeemKey(key).ConfigureAwait(false); if (otherResult == null) { @@ -994,6 +994,14 @@ namespace ArchiSteamFarm { if (alreadyHandled) { break; } + + if (result.Items.Count != 0) { + continue; + } + + foreach (KeyValuePair item in otherResult.Items) { + result.Items[item.Key] = item.Value; + } } key = reader.ReadLine(); // Next key