From 81df996e48f4b0519434a6809b2c3cc7aa0175d2 Mon Sep 17 00:00:00 2001 From: James Ketrenos Date: Sun, 13 Mar 2022 18:01:08 -0700 Subject: [PATCH] Trading now works with bank limits Signed-off-by: James Ketrenos --- client/src/Trade.js | 11 +++++++++-- server/routes/games.js | 2 ++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/client/src/Trade.js b/client/src/Trade.js index 7f14aa8..afaee90 100644 --- a/client/src/Trade.js +++ b/client/src/Trade.js @@ -373,11 +373,18 @@ const Trade = () => { } if (isTurn) { - activeTrades.forEach(offer => offer.valid = !(turn.color in offer.offerRejected) && canMeetOffer(priv, offer)); + activeTrades.forEach(offer => { + if (offer.name === 'The bank') { + /* offer has to be the second parameter for the bank to match */ + offer.valid = isCompatibleOffer({ gives: trade.gets, gets: trade.gives }, offer); + } else { + offer.valid = !(turn.color in offer.offerRejected) && canMeetOffer(priv, offer); + } + }); } else { const found = activeTrades.find(item => item.name === turn.name); if (found) { - found.valid = !(color in found.offerRejected) && canMeetOffer(priv, found); + found.valid = !(color in found.offerRejected) && isCompatibleOffer(priv, found); } } diff --git a/server/routes/games.js b/server/routes/games.js index 1aa0294..21117a3 100755 --- a/server/routes/games.js +++ b/server/routes/games.js @@ -2298,6 +2298,7 @@ const placeSettlement = (game, session, index) => { sendUpdateToPlayers(game, { placements: game.placements, + activities: game.activities, turn: game.turn, chat: game.chat }); @@ -2789,6 +2790,7 @@ const placeCity = (game, session, index) => { private: session.player }); sendUpdateToPlayers(game, { + placements: game.placements, turn: game.turn, chat: game.chat, activities: game.activities