好的,所以我有一个来自Steam机器人的代码,如果提供状态正确,接受和拒绝交易。但是我希望它能接受给我提供东西的交易报价,但拒绝其他人要求提供的交易报价。
if(body.response.trade_offers_received){
body.response.trade_offers_received.forEach(function(offer) {
if (offer.trade_offer_state == 2){
offers.acceptOffer({tradeOfferId: offer.tradeofferid});
}
else {
offers.declineOffer({tradeOfferId: offer.tradeofferid});
}
}
);
}
答案 0 :(得分:2)
不完全确定您的代码是什么机器人,但是在查看steam api的交易优惠后,应该有一个名为" items_to_give 的数组"您可以在接受之前检查并查看它是否为空。
if (offer.trade_offer_state === 2 && (!offer.hasOwnProperty("items_to_give") || offer.items_to_give.length === 0)){
所以上面我们检查一下我们是否没有" items_to_give"钥匙,如果你什么都不给,那就不存在了。然后我们检查以100%确定它没有任何项目,以防万一Steam决定在以后包含空键及其API。
再次查看steam api之后,如果您还检查了TradeOfferStateCountered(4),我相信您的代码可以改进,这也可以让您接受计数器优惠。这是
的代码if ((offer.trade_offer_state === 2 || offer.trade_offer_state === 4) && (!offer.hasOwnProperty("items_to_give") || offer.items_to_give.length === 0)){