Referencing a missing variable in an effect now returns zero, not an error

This commit is contained in:
Thaum Rystra
2020-05-28 19:58:52 +02:00
parent d31f980002
commit 7f2401da81
8 changed files with 198 additions and 50 deletions

View File

@@ -20,6 +20,7 @@ export default function computeEffect(effect, memo){
applyToggles(effect, memo);
// Determine result of effect calculation
delete effect.errors;
if (!effect.calculation){
if(effect.operation === 'add' || effect.operation === 'base'){
effect.result = 0;
@@ -31,7 +32,11 @@ export default function computeEffect(effect, memo){
} else if(_.contains(['advantage', 'disadvantage', 'fail'], effect.operation)){
effect.result = 1;
} else {
effect.result = evaluateCalculation(effect.calculation, memo);
let {value, errors} = evaluateCalculation(effect.calculation, memo);
effect.result = value;
if (errors.length){
effect.errors = errors;
}
}
effect.computationDetails.computed = true;
effect.computationDetails.busyComputing = false;