diff --git a/module/data/action/baseAction.mjs b/module/data/action/baseAction.mjs index a886bf49..3666b6e7 100644 --- a/module/data/action/baseAction.mjs +++ b/module/data/action/baseAction.mjs @@ -208,8 +208,9 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel } async consume(config, successCost = false) { - const usefulResources = { - ...foundry.utils.deepClone(this.actor.system.resources), + const actor= this.actor.system.partner ?? this.actor, + usefulResources = { + ...foundry.utils.deepClone(actor.system.resources), fear: { value: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Resources.Fear), max: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).maxFear, @@ -246,7 +247,7 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel } }, []); - await (this.actor.system.partner ?? this.actor).modifyResource(resources); + await actor.modifyResource(resources); if ( config.uses?.enabled && ((!successCost && (!config.uses?.consumeOnSuccess || config.roll?.success)) || diff --git a/module/documents/actor.mjs b/module/documents/actor.mjs index 6b01c058..05c4cbaa 100644 --- a/module/documents/actor.mjs +++ b/module/documents/actor.mjs @@ -631,7 +631,7 @@ export default class DhpActor extends Actor { } async modifyResource(resources) { - if (!resources.length) return; + if (!resources?.length) return; if (resources.find(r => r.key === 'stress')) this.convertStressDamageToHP(resources); let updates = {