From 7a8591bb1b4c4bfeb2efb7f5d804b5134170966f Mon Sep 17 00:00:00 2001 From: WBHarry Date: Sun, 15 Mar 2026 22:35:16 +0100 Subject: [PATCH] Fixes --- .../applications/dialogs/damageReductionDialog.mjs | 7 +++---- module/applications/sheets/actors/party.mjs | 13 ++++++++----- module/data/actor/character.mjs | 2 +- templates/sheets/actors/party/resources.hbs | 11 +++++------ templates/sheets/global/tabs/tab-effects.hbs | 1 - 5 files changed, 17 insertions(+), 17 deletions(-) diff --git a/module/applications/dialogs/damageReductionDialog.mjs b/module/applications/dialogs/damageReductionDialog.mjs index 31e4f72d..6aeb2cf9 100644 --- a/module/applications/dialogs/damageReductionDialog.mjs +++ b/module/applications/dialogs/damageReductionDialog.mjs @@ -10,8 +10,8 @@ export default class DamageReductionDialog extends HandlebarsApplicationMixin(Ap this.reject = reject; this.actor = actor; this.damage = damage; - // this.damageType = damageType; - this.damageType = ['physical']; + + this.damageType = damageType; this.rulesDefault = game.settings.get( CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation @@ -340,9 +340,8 @@ export default class DamageReductionDialog extends HandlebarsApplicationMixin(Ap const { selectedStressMarks, stressReductions, currentDamage } = this.getDamageInfo(); const armorChanges = this.marks.armor.reduce((acc, source) => { const amount = Object.values(source.marks).filter(x => x.selected).length; - if (!amount) return acc; + if (amount) acc.push({ uuid: source.effect.uuid, amount }); - acc.push({ uuid: source.effect.uuid, amount }); return acc; }, []); const stressSpent = diff --git a/module/applications/sheets/actors/party.mjs b/module/applications/sheets/actors/party.mjs index 1b1722db..20792141 100644 --- a/module/applications/sheets/actors/party.mjs +++ b/module/applications/sheets/actors/party.mjs @@ -190,11 +190,14 @@ export default class Party extends DHBaseActorSheet { * Toggles a armor slot resource value. * @type {ApplicationClickAction} */ - static async #toggleArmorSlot(_, target, element) { - const armorItem = await foundry.utils.fromUuid(target.dataset.itemUuid); - const armorValue = Number.parseInt(target.dataset.value); - const newValue = armorItem.system.marks.value >= armorValue ? armorValue - 1 : armorValue; - await armorItem.update({ 'system.marks.value': newValue }); + static async #toggleArmorSlot(_, target) { + const actor = game.actors.get(target.dataset.actorId); + const { value, max } = actor.system.armorScore; + const inputValue = Number.parseInt(target.dataset.value); + const newValue = value >= inputValue ? inputValue - 1 : inputValue; + const changeValue = Math.min(newValue - value, max - value); + + await actor.system.updateArmorValue({ value: changeValue }); this.render(); } diff --git a/module/data/actor/character.mjs b/module/data/actor/character.mjs index 7b868f6b..8ded7a0f 100644 --- a/module/data/actor/character.mjs +++ b/module/data/actor/character.mjs @@ -527,7 +527,7 @@ export default class DhCharacter extends DhCreature { const updateValues = Object.values(embeddedUpdates); for (const [index, { doc, updates }] of updateValues.entries()) - doc.updateEmbeddedDocuments('ActiveEffect', updates, { render: index === updateValues.length - 1 }); + await doc.updateEmbeddedDocuments('ActiveEffect', updates, { render: index === updateValues.length - 1 }); } async updateArmorEffectValue({ uuid, value }) { diff --git a/templates/sheets/actors/party/resources.hbs b/templates/sheets/actors/party/resources.hbs index 74f94806..bfbfb578 100644 --- a/templates/sheets/actors/party/resources.hbs +++ b/templates/sheets/actors/party/resources.hbs @@ -52,13 +52,12 @@ - {{#if actor.system.armor.system.marks}} + {{#if actor.system.armorScore.max}}
{{localize "DAGGERHEART.GENERAL.armorSlots"}} - {{actor.system.armor.system.marks.value}} / {{actor.system.armorScore}} + {{actor.system.armorScore.value}} / {{actor.system.armorScore.max}}
{{/if}} diff --git a/templates/sheets/global/tabs/tab-effects.hbs b/templates/sheets/global/tabs/tab-effects.hbs index bca7f326..1f0967b8 100644 --- a/templates/sheets/global/tabs/tab-effects.hbs +++ b/templates/sheets/global/tabs/tab-effects.hbs @@ -18,6 +18,5 @@ collection=effects.inactives canCreate=true hideResources=true - disabled=true }} \ No newline at end of file