From 4bc062c464e05cfde3c536d622935a3aa05b8d67 Mon Sep 17 00:00:00 2001 From: vodofrede Date: Wed, 20 Apr 2022 18:57:33 +0200 Subject: [PATCH] fixed issue with dmg calculation --- src/script/weapon.js | 26 +++++++++++++------------- src/style/main.css | 1 + 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/src/script/weapon.js b/src/script/weapon.js index 0e036a3..fe5ff0b 100644 --- a/src/script/weapon.js +++ b/src/script/weapon.js @@ -130,32 +130,32 @@ function changeSort(newSort) { function damage(weapon, infusion, upgraded, stats) { let weaponInfusion = weapon.infusions[infusion.id]; - let upgradeLevel = upgraded ? (weapon.unique ? 10 : 25) : 0; + let upgLevel = upgraded ? (weapon.unique ? 10 : 25) : 0; - let base = infusion.damage.map( - (amount, ty) => weaponInfusion.damage[ty] * (amount + infusion.upgrade[ty] * upgradeLevel), + let baseDmg = infusion.damage.map( + (dmg, ty) => weaponInfusion.damage[ty] * (dmg + infusion.upgrade[ty] * upgLevel * (weapon.unique ? 2.5 : 1.0)), ); - let scaling = stats.some((stat, i) => stat < weapon.requirements[i]) - ? base.map(dmg => dmg * -0.4) - : base.map((baseAmount, i) => { + let scalingDmg = stats.some((stat, i) => stat < weapon.requirements[i]) + ? baseDmg.map(dmg => dmg * -0.4) + : baseDmg.map((dmg, ty) => { let statCorrection = corrections( - CORRECTIONS[weaponInfusion.corrections[i]], + CORRECTIONS[weaponInfusion.corrections[ty]], stats, - weaponInfusion.masks[i], + weaponInfusion.masks[ty], ); - let statScaling = weaponInfusion.scaling.map(itemScaling => { + let statScaling = weaponInfusion.scaling.map(scaling => { return ( - itemScaling * infusion.scaling[i] + - itemScaling * infusion.scaling[i] * infusion.growth[i] * upgradeLevel + infusion.scaling[ty] * + (scaling + scaling * infusion.growth[ty] * upgLevel * (weapon.unique ? 4.0 : 1.0)) ); }); return statScaling - .map((scaling, statIndex) => (baseAmount * scaling * statCorrection[statIndex]) / 100.0) + .map((scaling, statIndex) => (dmg * scaling * statCorrection[statIndex]) / 100.0) .reduce((sum, n) => sum + n); }); - return Math.floor(base.reduce((sum, n) => sum + n) + scaling.reduce((sum, n) => sum + n)); + return Math.floor(baseDmg.reduce((sum, n) => sum + n) + scalingDmg.reduce((sum, n) => sum + n)); } function corrections(calc, stats, masks) { diff --git a/src/style/main.css b/src/style/main.css index d45bc76..7e7f0c0 100644 --- a/src/style/main.css +++ b/src/style/main.css @@ -161,6 +161,7 @@ a:hover { color: var(--link-color); } a.current { + color: var(--link-color); text-decoration: underline wavy var(--link-color) 0.08rem; text-underline-offset: 0.2rem; }