aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/io/github/moulberry/notenoughupdates/miscgui/NeuSearchCalculator.java
diff options
context:
space:
mode:
authorRoman / Linnea Gräf <roman.graef@gmail.com>2023-06-19 19:23:43 +0200
committerGitHub <noreply@github.com>2023-06-19 19:23:43 +0200
commita82819ec18bed8212fa73fda987cff951b810450 (patch)
tree2e18b55a6870ce5bd75516dd140ab3e6441054e5 /src/main/java/io/github/moulberry/notenoughupdates/miscgui/NeuSearchCalculator.java
parent7fd26d14e742c974ec50686c375ccdfd9c968faf (diff)
downloadnotenoughupdates-a82819ec18bed8212fa73fda987cff951b810450.tar.gz
notenoughupdates-a82819ec18bed8212fa73fda987cff951b810450.tar.bz2
notenoughupdates-a82819ec18bed8212fa73fda987cff951b810450.zip
Add variables to calculator (#721)
* Add variables to calculator * Fix unary minus for variables
Diffstat (limited to 'src/main/java/io/github/moulberry/notenoughupdates/miscgui/NeuSearchCalculator.java')
-rw-r--r--src/main/java/io/github/moulberry/notenoughupdates/miscgui/NeuSearchCalculator.java14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/main/java/io/github/moulberry/notenoughupdates/miscgui/NeuSearchCalculator.java b/src/main/java/io/github/moulberry/notenoughupdates/miscgui/NeuSearchCalculator.java
index f7306f2a..71dedb12 100644
--- a/src/main/java/io/github/moulberry/notenoughupdates/miscgui/NeuSearchCalculator.java
+++ b/src/main/java/io/github/moulberry/notenoughupdates/miscgui/NeuSearchCalculator.java
@@ -20,10 +20,14 @@
package io.github.moulberry.notenoughupdates.miscgui;
import io.github.moulberry.notenoughupdates.NotEnoughUpdates;
+import io.github.moulberry.notenoughupdates.auction.APIManager;
+import io.github.moulberry.notenoughupdates.util.ApiUtil;
import io.github.moulberry.notenoughupdates.util.Calculator;
+import javax.swing.text.html.Option;
import java.math.BigDecimal;
import java.text.DecimalFormat;
+import java.util.Optional;
public class NeuSearchCalculator {
@@ -43,7 +47,7 @@ public class NeuSearchCalculator {
if (!lastInput.equals(input)) {
lastInput = input;
try {
- BigDecimal calculate = Calculator.calculate(input);
+ BigDecimal calculate = Calculator.calculate(input, PROVIDE_LOWEST_BIN);
lastResult = new DecimalFormat("#,##0.##").format(calculate);
} catch (Calculator.CalculatorException ignored) {
lastResult = null;
@@ -52,4 +56,12 @@ public class NeuSearchCalculator {
return lastResult;
}
+
+ public static Calculator.VariableProvider PROVIDE_LOWEST_BIN = name -> {
+ double bazaarOrBin = NotEnoughUpdates.INSTANCE.manager.auctionManager.getBazaarOrBin(name, false);
+ if (bazaarOrBin < 0)
+ return Optional.empty();
+ return Optional.of(BigDecimal.valueOf(bazaarOrBin));
+ };
+
}