From 279a77cd7695d7604e34d363b50803c8df1578df Mon Sep 17 00:00:00 2001 From: Dapoolp Date: Fri, 8 Aug 2025 21:31:35 +0200 Subject: [PATCH] h --- module/applications/dialogs/d20RollDialog.mjs | 5 +++++ module/data/fields/action/costField.mjs | 5 +++++ templates/dialogs/dice-roll/costSelection.hbs | 5 ++++- .../sheets/global/partials/inventory-fieldset-items-V2.hbs | 2 +- 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/module/applications/dialogs/d20RollDialog.mjs b/module/applications/dialogs/d20RollDialog.mjs index 4b8749a3..3f68acef 100644 --- a/module/applications/dialogs/d20RollDialog.mjs +++ b/module/applications/dialogs/d20RollDialog.mjs @@ -69,6 +69,7 @@ export default class D20RollDialog extends HandlebarsApplicationMixin(Applicatio icon })); + this.config.costs ??= []; if (this.config.costs?.length) { const updatedCosts = game.system.api.fields.ActionFields.CostField.calcCosts.call( this.action, @@ -143,6 +144,10 @@ export default class D20RollDialog extends HandlebarsApplicationMixin(Applicatio this.config.experiences.indexOf(button.dataset.key) > -1 ? this.config.experiences.filter(x => x !== button.dataset.key) : [...this.config.experiences, button.dataset.key]; + this.config.costs = + this.config.costs.indexOf(this.config.costs.find(c => c.extKey === button.dataset.key)) > -1 + ? this.config.costs.filter(x => x.extKey !== button.dataset.key) + : [...this.config.costs, { extKey: button.dataset.key, key: 'hope', value: 1}]; this.render(); } diff --git a/module/data/fields/action/costField.mjs b/module/data/fields/action/costField.mjs index b9495e8b..262f72db 100644 --- a/module/data/fields/action/costField.mjs +++ b/module/data/fields/action/costField.mjs @@ -47,6 +47,7 @@ export default class CostField extends fields.ArrayField { static hasCost(costs) { const realCosts = CostField.getRealCosts.call(this, costs), hasFearCost = realCosts.findIndex(c => c.key === 'fear'); + CostField.mergeCost.call(this, realCosts) if (hasFearCost > -1) { const fearCost = realCosts.splice(hasFearCost, 1)[0]; if ( @@ -100,4 +101,8 @@ export default class CostField extends fields.ArrayField { } return Number(max); } + + static mergeCost(costs) { + console.log(costs) + } } diff --git a/templates/dialogs/dice-roll/costSelection.hbs b/templates/dialogs/dice-roll/costSelection.hbs index 765fbaf9..97e15485 100644 --- a/templates/dialogs/dice-roll/costSelection.hbs +++ b/templates/dialogs/dice-roll/costSelection.hbs @@ -17,7 +17,10 @@
- +
{{#if (and scalable maxStep)}} diff --git a/templates/sheets/global/partials/inventory-fieldset-items-V2.hbs b/templates/sheets/global/partials/inventory-fieldset-items-V2.hbs index 8fbd5800..1ef065d5 100644 --- a/templates/sheets/global/partials/inventory-fieldset-items-V2.hbs +++ b/templates/sheets/global/partials/inventory-fieldset-items-V2.hbs @@ -26,7 +26,7 @@ Parameters: {{localize title}} {{#if canCreate}} -