From 3133e664d54f8beff0e8ab0b1d6198cda0246cdd Mon Sep 17 00:00:00 2001 From: Stefan Zermatten Date: Tue, 27 Jul 2021 15:28:44 +0200 Subject: [PATCH] Reduced stats computation precision to round off small decimal floating point errors --- app/imports/api/creature/computation/engine/combineStat.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/imports/api/creature/computation/engine/combineStat.js b/app/imports/api/creature/computation/engine/combineStat.js index 53e48cd4..db612d78 100644 --- a/app/imports/api/creature/computation/engine/combineStat.js +++ b/app/imports/api/creature/computation/engine/combineStat.js @@ -1,6 +1,7 @@ import computeStat from '/imports/api/creature/computation/engine/computeStat.js'; import computeProficiency from '/imports/api/creature/computation/engine/computeProficiency.js'; import evaluateCalculation from '/imports/api/creature/computation/engine/evaluateCalculation.js'; +import stripFloatingPointOddities from '/imports/ui/utility/stripFloatingPointOddities.js'; import { union } from 'lodash'; export default function combineStat(stat, aggregator, memo){ @@ -34,6 +35,8 @@ function getAggregatorResult(stat, aggregator){ } if (!stat.decimal && Number.isFinite(result)){ result = Math.floor(result); + } else if (Number.isFinite(result)){ + result = stripFloatingPointOddities(result); } return result; }