diff --git a/module/data/actor/character.mjs b/module/data/actor/character.mjs index 1bb3560f..32f44df6 100644 --- a/module/data/actor/character.mjs +++ b/module/data/actor/character.mjs @@ -410,14 +410,11 @@ export default class DhCharacter extends DhCreature { } get loadoutSlot() { - const loadoutCount = this.domainCards.loadout?.length ?? 0, - worldSetting = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).maxLoadout, - max = !worldSetting ? null : worldSetting + this.bonuses.maxLoadout; - + const loadoutCount = this.domainCards.loadout?.length ?? 0; + const worldSetting = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).maxLoadout; return { current: loadoutCount, - available: !max ? true : Math.max(max - loadoutCount, 0), - max + available: loadoutCount < worldSetting }; } diff --git a/module/data/settings/Homebrew.mjs b/module/data/settings/Homebrew.mjs index d4b7b03f..b5e02675 100644 --- a/module/data/settings/Homebrew.mjs +++ b/module/data/settings/Homebrew.mjs @@ -54,7 +54,7 @@ export default class DhHomebrew extends foundry.abstract.DataModel { maxDomains: new fields.NumberField({ required: true, integer: true, - min: 1, + min: 0, initial: 2, label: 'DAGGERHEART.SETTINGS.Homebrew.FIELDS.maxDomains.label' }), @@ -196,6 +196,12 @@ export default class DhHomebrew extends foundry.abstract.DataModel { return source; } + _initialize(options) { + super._initialize(options); + this.maxDomains ||= Infinity; + this.maxLoadout ||= Infinity; + } + /** Invoked by the setting when data changes */ handleChange() { if (this.maxFear) {