From 4db0c4de414744543f0b9623ce03fbdb1c8cf22b Mon Sep 17 00:00:00 2001 From: Jakob Date: Fri, 9 Jul 2021 01:37:37 +0200 Subject: [PATCH] Fix calculation --- Die_Schwarze_Katze/Die_Schwarze_Katze.html | 60 +++++++++++----------- 1 file changed, 31 insertions(+), 29 deletions(-) diff --git a/Die_Schwarze_Katze/Die_Schwarze_Katze.html b/Die_Schwarze_Katze/Die_Schwarze_Katze.html index b699a6bd7c..6bd02cacdf 100644 --- a/Die_Schwarze_Katze/Die_Schwarze_Katze.html +++ b/Die_Schwarze_Katze/Die_Schwarze_Katze.html @@ -86,7 +86,7 @@ (MU + KL + IN) / 3 - 10 + Mod = - +
@@ -101,7 +101,7 @@ (KO + KO + KK) / 3 - 10 + Mod = - +
@@ -1198,7 +1198,7 @@

Aktuelle Ahnenenergie

Maximale Ahnenenergie

- +
@@ -1496,25 +1496,6 @@ return parseInt(attr)||0; } - // Ahnenenergie calculation - on("sheet:opened change:leiteigenschaft change:ahnenenergiemod", function() { - getAttrs(["leiteigenschaft", "ahnenenergiemod", "charisma", "klugheit", "intuition", "mut", "toggle_nsc_charactersheet"], function(values) { - - if (isNscSheet(values.toggle_nsc_charactersheet)) { - return; - } - - let ahnenenergiemod = parseIntValue(values.ahnenenergiemod); - let leiteigenschaft = values.leiteigenschaft; - let leiteigenschaftAttribut = parseIntValue(values.leiteigenschaft); - let ahnenenergieCalculated = leiteigenschaftAttribut === 0 ? 0 : 20 + leiteigenschaftAttribut + ahnenenergiemod; - // console.log("calculated ahnenenergie_max = " + ahnenenergieCalculated); - setAttrs({ - ahnenenergie_max: ahnenenergieCalculated - }); - }); - }); - // Skill value calculation function calculateEw(e1, e2) { let e1Int = parseIntValue(e1); @@ -1548,20 +1529,41 @@ let skillsListEw2 = skillsList.map(skill => skill + "Ew2"); let attributeChangeRequiredAttrs = skillsList.concat(skillsListEw1).concat(skillsListEw2).concat(attributeList).concat(["toggle_nsc_charactersheet"]); - // update derived attributes - on("sheet:opened change:initiativemod change:mut change:gewandtheit", function() { - getAttrs(["initiativemod", "mut", "gewandtheit", "toggle_nsc_charactersheet"], function(values) { + + // update calculated values + on("sheet:opened change:initiativemod change:mut change:gewandtheit change:klugheit change:leiteigenschaft change:ahnenenergiemod change:konstitution change:intuition change:koerperkraft " + + "change:lebensenergiemod change:seelenkraftmod change:zaehigkeitmod" + , function() { + getAttrs(["leiteigenschaft", "ahnenenergiemod", "charisma", "klugheit", "intuition", "konstitution", "initiativemod", "mut", + "gewandtheit", "seelenkraftmod", "toggle_nsc_charactersheet", "lebensenergiemod", "koerperkraft", "zaehigkeitmod"], function(values) { if (isNscSheet(values.toggle_nsc_charactersheet)) { - console.log("NSC Sheet"); return; } - let mut = parseIntValue(values["mut"]); - let gewandtheit = parseIntValue(values["gewandtheit"]); - let initiativemod = parseIntValue(values["initiativemod"]); + let mut = parseIntValue(values.mut); + let gewandtheit = parseIntValue(values.gewandtheit); + let klugheit = parseIntValue(values.klugheit); + let konstitution = parseIntValue(values.konstitution); + let intuition = parseIntValue(values.intuition); + let koerperkraft = parseIntValue(values.koerperkraft); + + let lebensenergiemod = parseIntValue(values.lebensenergiemod); + let initiativemod = parseIntValue(values.initiativemod); + let ahnenenergiemod = parseIntValue(values.ahnenenergiemod); + let seelenkraftmod = parseIntValue(values.seelenkraftmod); + let zaehigkeitmod = parseIntValue(values.zaehigkeitmod); + + // Ahnenenergie calculation + let leiteigenschaft = values.leiteigenschaft; + let leiteigenschaftAttribut = parseIntValue(values[leiteigenschaft]); + let ahnenenergieCalculated = leiteigenschaftAttribut === 0 ? 0 : 20 + leiteigenschaftAttribut + ahnenenergiemod; setAttrs({ + "lebensenergie_max": (konstitution*2)+lebensenergiemod, + "ahnenenergie_max": ahnenenergieCalculated, + "seelenkraft": Math.round((mut+klugheit+intuition)/3)-10+seelenkraftmod, + "zaehigkeit": Math.round((konstitution+konstitution+koerperkraft)/3)-10+zaehigkeitmod, "initiative": Math.round((mut + gewandtheit) / 2) + initiativemod }); });