From 6180f7e44778bef26ed4386f260052651da7d4fa Mon Sep 17 00:00:00 2001 From: joffrey-bion Date: Sun, 29 Nov 2020 17:35:19 +0100 Subject: Remove unrealistic transaction options Options where both the left and the right price are more expensive should never be used. Resolves: https://github.com/joffrey-bion/seven-wonders/issues/53 --- .../sevenwonders/engine/resources/TransactionOptionsCalculator.kt | 2 ++ 1 file changed, 2 insertions(+) (limited to 'sw-engine/src/main/kotlin/org') diff --git a/sw-engine/src/main/kotlin/org/luxons/sevenwonders/engine/resources/TransactionOptionsCalculator.kt b/sw-engine/src/main/kotlin/org/luxons/sevenwonders/engine/resources/TransactionOptionsCalculator.kt index fbbcaa6e..29fcc21b 100644 --- a/sw-engine/src/main/kotlin/org/luxons/sevenwonders/engine/resources/TransactionOptionsCalculator.kt +++ b/sw-engine/src/main/kotlin/org/luxons/sevenwonders/engine/resources/TransactionOptionsCalculator.kt @@ -122,6 +122,8 @@ private class TransactionOptionsCalculator(resourcesToPay: Resources, player: Pl private operator fun PricedResourceTransactions.compareTo(prices: Map): Int = when { left == prices.left -> right.compareTo(prices.right) right == prices.right -> left.compareTo(prices.left) + left < prices.left && right < prices.right -> -1 + left > prices.left && right > prices.right -> 1 else -> 0 } -- cgit