diff --git a/lang/en.json b/lang/en.json index b1be93cd..d8a4da1b 100755 --- a/lang/en.json +++ b/lang/en.json @@ -2107,7 +2107,11 @@ "extendCharacterDescriptions": { "label": "Characters" }, "extendAdversaryDescriptions": { "label": "Adversaries" }, "extendEnvironmentDescriptions": { "label": "Environments" }, - "extendItemDescriptions": { "label": "Items" } + "extendItemDescriptions": { "label": "Items" }, + "expandRollMessage": "Auto-expand Roll Message", + "expandRollMessageRoll": { "label": "Roll" }, + "expandRollMessageDamage": { "label": "Damage/Healing" }, + "expandRollMessageTarget": { "label": "Targets" } }, "fearDisplay": { "token": "Tokens", diff --git a/module/data/settings/Appearance.mjs b/module/data/settings/Appearance.mjs index ac980346..167f4670 100644 --- a/module/data/settings/Appearance.mjs +++ b/module/data/settings/Appearance.mjs @@ -71,6 +71,20 @@ export default class DhAppearance extends foundry.abstract.DataModel { extendItemDescriptions: new fields.BooleanField({ initial: false, label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.extendItemDescriptions.label' + }), + expandRollMessage: new fields.SchemaField({ + roll: new fields.BooleanField({ + initial: false, + label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandRollMessageRoll.label' + }), + damage: new fields.BooleanField({ + initial: false, + label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandRollMessageDamage.label' + }), + target: new fields.BooleanField({ + initial: false, + label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandRollMessageTarget.label' + }) }) }; } diff --git a/module/documents/chatMessage.mjs b/module/documents/chatMessage.mjs index 43743ef1..4aafc2f0 100644 --- a/module/documents/chatMessage.mjs +++ b/module/documents/chatMessage.mjs @@ -67,6 +67,19 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { html.classList.add('critical'); break; } + + const autoExpandRoll = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.appearance).expandRollMessage, + rollSections = html.querySelectorAll(".roll-part"); + rollSections.forEach(s => { + if(s.classList.contains("roll-section")) { + const toExpand = s.querySelector('[data-action="expandRoll"]'); + toExpand.classList.toggle("expanded", autoExpandRoll.roll); + } else if(s.classList.contains("damage-section")) + s.classList.toggle("expanded", autoExpandRoll.damage); + else if(s.classList.contains("target-section")) + s.classList.toggle("expanded", autoExpandRoll.target); + }) + } if(!game.user.isGM) { diff --git a/templates/settings/appearance-settings.hbs b/templates/settings/appearance-settings.hbs index d4d41d62..e047e33d 100644 --- a/templates/settings/appearance-settings.hbs +++ b/templates/settings/appearance-settings.hbs @@ -17,6 +17,13 @@ {{formGroup settingFields.schema.fields.extendItemDescriptions value=settingFields._source.extendItemDescriptions localize=true}} +
+ {{localize 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandRollMessage'}} + {{formGroup settingFields.schema.fields.expandRollMessage.fields.roll value=settingFields.expandRollMessage.roll localize=true}} + {{formGroup settingFields.schema.fields.expandRollMessage.fields.damage value=settingFields.expandRollMessage.damage localize=true}} + {{formGroup settingFields.schema.fields.expandRollMessage.fields.target value=settingFields.expandRollMessage.target localize=true}} +
+ {{#if showDiceSoNice}}
{{localize "DAGGERHEART.SETTINGS.Menu.appearance.diceSoNice.title"}} diff --git a/templates/ui/chat/parts/damage-part.hbs b/templates/ui/chat/parts/damage-part.hbs index 346e9621..05b6b825 100644 --- a/templates/ui/chat/parts/damage-part.hbs +++ b/templates/ui/chat/parts/damage-part.hbs @@ -1,4 +1,4 @@ -
+
{{localize (ifThen hasHealing "DAGGERHEART.ACTIONS.TYPES.healing.name" "DAGGERHEART.ACTIONS.TYPES.damage.name")}}
@@ -12,7 +12,7 @@
{{#each damage as | roll index | }}
- {{log @root}} + {{localize (concat 'DAGGERHEART.CONFIG.HealingType.' index '.inChatRoll')}}
{{localize "DAGGERHEART.GENERAL.total"}}: {{roll.total}}
{{#if (and (eq index "hitPoints")../isDirect)}}
{{localize "DAGGERHEART.CONFIG.DamageType.direct.short"}}
{{/if}}
{{#each roll.parts}} diff --git a/templates/ui/chat/roll.hbs b/templates/ui/chat/roll.hbs index 2e6f5d24..be51969f 100644 --- a/templates/ui/chat/roll.hbs +++ b/templates/ui/chat/roll.hbs @@ -1,7 +1,7 @@
{{title}}
{{#if hasRoll}}{{> 'systems/daggerheart/templates/ui/chat/parts/roll-part.hbs'}}{{/if}} - {{#if (and (not (empty damage)) (or hasDamage hasHealing))}}{{> 'systems/daggerheart/templates/ui/chat/parts/damage-part.hbs'}}{{/if}} + {{#if (or hasDamage hasHealing)}}{{> 'systems/daggerheart/templates/ui/chat/parts/damage-part.hbs'}}{{/if}} {{#if hasTarget}}{{> 'systems/daggerheart/templates/ui/chat/parts/target-part.hbs'}}{{/if}}