Reworked how bare symbols are handled, which should fix simplification

This commit is contained in:
Thaum Rystra
2020-05-15 14:44:08 +02:00
parent cd8a557120
commit 4478628200
4 changed files with 30 additions and 28 deletions

View File

@@ -1,4 +1,4 @@
import replaceBareSymbolsWithValueAccessor from '/imports/api/creature/computation/utility/replaceBareSymbolsWithValueAccessor.js';
import bareSymbolSubtitutor from '/imports/api/creature/computation/utility/bareSymbolSubtitutor.js';
import computeStat from '/imports/api/creature/computation/computeStat.js';
import math from '/imports/math.js';
@@ -21,7 +21,7 @@ export default function evaluateCalculation(string, memo){
}
});
// Ensure any bare symbols are value accessors instead
let substitutedCalc = calc.transform(replaceBareSymbolsWithValueAccessor);
let substitutedCalc = calc.transform(bareSymbolSubtitutor(memo.statsByVariableName));
// Evaluate the expression to a number or return with substitutions
try {
return substitutedCalc.evaluate(memo.statsByVariableName);