diff --git a/module/applications/scene/sceneConfigSettings.mjs b/module/applications/scene/sceneConfigSettings.mjs index 5335be16..57a2bda4 100644 --- a/module/applications/scene/sceneConfigSettings.mjs +++ b/module/applications/scene/sceneConfigSettings.mjs @@ -104,7 +104,10 @@ export default class DhSceneConfigSettings extends foundry.applications.sheets.S /** @override */ async _processSubmitData(event, form, submitData, options) { if (!submitData.flags) submitData.flags = {}; - submitData.flags.daggerheart = this.daggerheartFlag.toObject(); + submitData.flags.daggerheart = foundry.utils.mergeObject( + this.daggerheartFlag.toObject(), + submitData.flags.daggerheart + ); submitData.flags.daggerheart.sceneEnvironments = submitData.flags.daggerheart.sceneEnvironments.filter(x => foundry.utils.fromUuidSync(x) ); diff --git a/module/data/actor/character.mjs b/module/data/actor/character.mjs index aca87c5c..10fba63c 100644 --- a/module/data/actor/character.mjs +++ b/module/data/actor/character.mjs @@ -670,7 +670,7 @@ export default class DhCharacter extends DhCreature { }; const globalHopeMax = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).maxHope; - this.resources.hope.max = globalHopeMax - this.scars; + this.resources.hope.max = globalHopeMax; this.resources.hitPoints.max += this.class.value?.system?.hitPoints ?? 0; /* Companion Related Data */ @@ -694,6 +694,7 @@ export default class DhCharacter extends DhCreature { } } + this.resources.hope.max -= this.scars; this.resources.hope.value = Math.min(baseHope, this.resources.hope.max); this.attack.roll.trait = this.rules.attack.roll.trait ?? this.attack.roll.trait;