mirror of
https://github.com/JustArchiNET/ArchiSteamFarm.git
synced 2026-01-01 14:10:53 +00:00
Misc optimization
This commit is contained in:
@@ -221,7 +221,7 @@ namespace ArchiSteamFarm {
|
||||
return output?.Queue;
|
||||
}
|
||||
|
||||
internal async Task<HashSet<Steam.TradeOffer>> GetActiveTradeOffers() {
|
||||
internal async Task<HashSet<Steam.TradeOffer>> GetActiveTradeOffers(IReadOnlyCollection<ulong> ignoredTradeOfferIDs = null) {
|
||||
string steamApiKey = await GetApiKey().ConfigureAwait(false);
|
||||
if (string.IsNullOrEmpty(steamApiKey)) {
|
||||
return null;
|
||||
@@ -302,6 +302,10 @@ namespace ArchiSteamFarm {
|
||||
return null;
|
||||
}
|
||||
|
||||
if (ignoredTradeOfferIDs?.Contains(tradeOfferID) == true) {
|
||||
continue;
|
||||
}
|
||||
|
||||
uint otherSteamID3 = trade["accountid_other"].AsUnsignedInteger();
|
||||
if (otherSteamID3 == 0) {
|
||||
Bot.ArchiLogger.LogNullError(nameof(otherSteamID3));
|
||||
|
||||
@@ -136,19 +136,11 @@ namespace ArchiSteamFarm {
|
||||
}
|
||||
|
||||
private async Task ParseActiveTrades() {
|
||||
HashSet<Steam.TradeOffer> tradeOffers = await Bot.ArchiWebHandler.GetActiveTradeOffers().ConfigureAwait(false);
|
||||
HashSet<Steam.TradeOffer> tradeOffers = await Bot.ArchiWebHandler.GetActiveTradeOffers(IgnoredTrades).ConfigureAwait(false);
|
||||
if ((tradeOffers == null) || (tradeOffers.Count == 0)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (IgnoredTrades.Count > 0) {
|
||||
if (tradeOffers.RemoveWhere(tradeoffer => IgnoredTrades.Contains(tradeoffer.TradeOfferID)) > 0) {
|
||||
if (tradeOffers.Count == 0) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
IEnumerable<Task<ParseTradeResult>> tasks = tradeOffers.Select(ParseTrade);
|
||||
ICollection<ParseTradeResult> results;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user