Added calculation errors to attributes and toggles
This commit is contained in:
@@ -2,13 +2,12 @@ import evaluateCalculation from '/imports/api/creature/computation/evaluateCalcu
|
||||
|
||||
export default class EffectAggregator{
|
||||
constructor(stat, memo){
|
||||
delete this.baseValueErrors;
|
||||
if (stat.baseValueCalculation){
|
||||
let {value, errors} = evaluateCalculation(stat.baseValueCalculation, memo);
|
||||
this.statBaseValue = value;
|
||||
if (errors.length){
|
||||
this.baseValueErrors = errors;
|
||||
} else {
|
||||
delete this.baseValueErrors;
|
||||
}
|
||||
this.base = this.statBaseValue;
|
||||
} else {
|
||||
|
||||
@@ -31,6 +31,7 @@ function getAggregatorResult(stat, aggregator){
|
||||
function combineAttribute(stat, aggregator){
|
||||
stat.value = getAggregatorResult(stat, aggregator);
|
||||
stat.baseValue = aggregator.statBaseValue;
|
||||
stat.baseValueErrors = aggregator.baseValueErrors;
|
||||
if (stat.attributeType === 'ability') {
|
||||
stat.modifier = Math.floor((stat.value - 10) / 2);
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@ export default function computeToggle(toggle, memo){
|
||||
toggle.computationDetails.busyComputing = true;
|
||||
|
||||
// Do work
|
||||
delete toggle.errors;
|
||||
if (toggle.enabled){
|
||||
toggle.toggleResult = true;
|
||||
} else if (toggle.disabled){
|
||||
@@ -29,8 +30,6 @@ export default function computeToggle(toggle, memo){
|
||||
toggle.toggleResult = value;
|
||||
if (errors.length){
|
||||
toggle.errors = errors;
|
||||
} else {
|
||||
delete toggle.errors;
|
||||
}
|
||||
}
|
||||
toggle.computationDetails.computed = true;
|
||||
|
||||
Reference in New Issue
Block a user