From 28307e26c32ac39e43390229826bd16bdcb8efc3 Mon Sep 17 00:00:00 2001 From: Stefan Zermatten Date: Fri, 19 Aug 2022 14:03:03 +0200 Subject: [PATCH] Fixed some issues with skill display --- .../computeByType/computeSkill.js | 2 +- .../computeVariable/computeVariableAsSkill.js | 5 ++- app/imports/api/properties/Skills.js | 1 + .../components/skills/SkillListTile.vue | 4 +- .../ui/properties/viewers/SkillViewer.vue | 44 ++++--------------- 5 files changed, 16 insertions(+), 40 deletions(-) diff --git a/app/imports/api/engine/computation/computeComputation/computeByType/computeSkill.js b/app/imports/api/engine/computation/computeComputation/computeByType/computeSkill.js index 2e79d18a..9243adb4 100644 --- a/app/imports/api/engine/computation/computeComputation/computeByType/computeSkill.js +++ b/app/imports/api/engine/computation/computeComputation/computeByType/computeSkill.js @@ -4,7 +4,7 @@ // by computeVariableAsSkill export default function computeSkill(computation, node){ const prop = node.data; - prop.proficiency = prop.baseProficiency; + prop.proficiency = prop.baseProficiency || 0; let profBonus = computation.scope['proficiencyBonus']?.value || 0; // Multiply the proficiency bonus by the actual proficiency if(prop.proficiency === 0.49){ diff --git a/app/imports/api/engine/computation/computeComputation/computeByType/computeVariable/computeVariableAsSkill.js b/app/imports/api/engine/computation/computeComputation/computeByType/computeVariable/computeVariableAsSkill.js index 37b6afdd..01d34101 100644 --- a/app/imports/api/engine/computation/computeComputation/computeByType/computeVariable/computeVariableAsSkill.js +++ b/app/imports/api/engine/computation/computeComputation/computeByType/computeVariable/computeVariableAsSkill.js @@ -33,6 +33,9 @@ export default function computeVariableAsSkill(computation, node, prop){ const aggregator = node.data.effectAggregator; const aggregatorBase = aggregator?.base || 0; + // Store effects + prop.effects = node.data.effects; + // If there is no aggregator, determine if the prop can hide, then exit if (!aggregator){ prop.hide = statBase === undefined && @@ -71,8 +74,6 @@ export default function computeVariableAsSkill(computation, node, prop){ prop.fail = aggregator.fail; // Rollbonus prop.rollBonuses = aggregator.rollBonus; - // Store effects - prop.effects = node.data.effects; } function aggregateAbilityEffects({computation, skillNode, abilityNode}){ diff --git a/app/imports/api/properties/Skills.js b/app/imports/api/properties/Skills.js index 47ba2a76..d9f04791 100644 --- a/app/imports/api/properties/Skills.js +++ b/app/imports/api/properties/Skills.js @@ -135,6 +135,7 @@ let ComputedOnlySkillSchema = createPropertySchema({ effects: { type: Array, optional: true, + removeBeforeCompute: true, }, 'effects.$': { type: Object, diff --git a/app/imports/ui/properties/components/skills/SkillListTile.vue b/app/imports/ui/properties/components/skills/SkillListTile.vue index 45f8b138..e24ece45 100644 --- a/app/imports/ui/properties/components/skills/SkillListTile.vue +++ b/app/imports/ui/properties/components/skills/SkillListTile.vue @@ -8,7 +8,7 @@ -
+
{{ model.name }}