Merge from main, with conflict fixes

This commit is contained in:
Chris Ryan 2025-12-08 21:07:44 +10:00
commit a11a2d4e30
1252 changed files with 2537 additions and 22178 deletions

View file

@ -14,7 +14,7 @@
<div class="suggested-trait-container">{{this}}</div>
{{/each}}
</div>
<button class="action-button" data-action="useSuggestedTraits">{{localize "Use"}}</button>
<button class="action-button" data-action="useSuggestedTraits">{{localize "DAGGERHEART.GENERAL.use"}}</button>
</fieldset>
<div class="traits-inner-container">
{{#each traits.values}}

View file

@ -93,13 +93,13 @@
<footer class="padded">
<button type="button" data-action="takeDamage">
{{localize "Take"}}
{{localize "DAGGERHEART.GENERAL.take"}}
<div class="damage-value {{#if this.reducedDamage}}reduced-value{{/if}}">{{this.damage}}</div>
{{#if this.reducedDamage}}
<i class="fa-solid fa-arrow-right-long"></i>
<div class="damage-value">{{this.reducedDamage}}</div>
{{/if}}
{{localize "Damage"}}
{{localize "DAGGERHEART.GENERAL.damage"}}
</button>
</footer>
</div>

View file

@ -16,7 +16,7 @@
{{#if (and @root.hasRoll @root.activeTagTeamRoll)}}
<div class="tag-team-controller {{#if @root.tagTeamSelected}}selected{{/if}}" data-action="toggleTagTeamRoll">
<span><i class="{{ifThen @root.tagTeamSelected "fa-solid" "fa-regular"}} fa-circle"></i></span>
<span class="label">{{localize "Tag Team Roll"}}</span>
<span class="label">{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.title"}}</span>
</div>
{{/if}}
</header>

View file

@ -99,17 +99,19 @@
{{#if (ne @root.rollType 'FateRoll')}}
<fieldset class="experience-container">
<legend>{{localize "DAGGERHEART.GENERAL.experience.plural"}}</legend>
{{#each experiences}}
{{#if name}}
<div class="experience-chip {{#if (includes ../selectedExperiences id)}}selected{{/if}}" data-action="selectExperience" data-key="{{id}}" data-tooltip="{{this.description}}">
<span><i class="{{ifThen (includes ../selectedExperiences id) "fa-solid" "fa-regular"}} fa-circle"></i></span>
<span class="label">{{name}} +{{value}}</span>
</div>
{{/if}}
{{/each}}
</fieldset>
{{#if experiences.length}}
<fieldset class="experience-container">
<legend>{{localize "DAGGERHEART.GENERAL.experience.plural"}}</legend>
{{#each experiences}}
{{#if name}}
<div class="experience-chip {{#if (includes ../selectedExperiences id)}}selected{{/if}}" data-action="selectExperience" data-key="{{id}}" data-tooltip="{{this.description}}">
<span><i class="{{ifThen (includes ../selectedExperiences id) "fa-solid" "fa-regular"}} fa-circle"></i></span>
<span class="label">{{name}} +{{value}}</span>
</div>
{{/if}}
{{/each}}
</fieldset>
{{/if}}
<fieldset class="modifier-container {{#if (eq @root.rollType 'DualityRoll')}}two-columns{{else}}one-column{{/if}}">
<legend>{{localize "DAGGERHEART.GENERAL.Modifier.plural"}}</legend>
<div class="nest-inputs">

View file

@ -40,7 +40,7 @@
<fieldset class="one-column">
<legend>{{localize "DAGGERHEART.UI.Chat.groupRoll.partyTeam"}}</legend>
<span class="tooltip-container" {{#if allSelected}}data-tooltip="{{localize "The whole party is selected"}}"{{/if}}>
<span class="tooltip-container" {{#if allSelected}}data-tooltip="{{localize "DAGGERHEART.UI.Chat.groupRoll.wholePartySelected"}}"{{/if}}>
<input type="text" class="team-push-input" {{disabled @root.allSelected}}/>
</span>
{{#if (gt this.members.length 0)}}

View file

@ -1,4 +1,4 @@
<footer>
<button type="button" data-action="doReroll" {{disabled disabledReroll}}>{{localize "Reroll"}} <i class="fa-solid fa-dice"></i></button>
<button type="button" data-action="doReroll" {{disabled disabledReroll}}>{{localize "DAGGERHEART.GENERAL.reroll"}} <i class="fa-solid fa-dice"></i></button>
<button type="button" data-action="save" {{disabled saveDisabled}}>{{localize "DAGGERHEART.APPLICATIONS.RerollDialog.acceptCurrentRolls"}}</button>
</footer>

View file

@ -3,7 +3,7 @@
<div class="levelup-navigation-actions {{#if (not this.showTabs)}}test{{/if}}">
{{#if this.navigate.previous.fromSummary}}
<button data-action="activatePart" data-part="advancements">{{localize "DAGGERHEART.APPLICATIONS.Levelup.navigateToLevelup"}}</button>
<button data-action="save" {{#if (not this.levelup.allLevelsFinished)}}disabled{{/if}}>{{localize "Finish Levelup"}}</button>
<button data-action="save" {{#if (not this.levelup.allLevelsFinished)}}disabled{{/if}}>{{localize "DAGGERHEART.APPLICATIONS.Levelup.finishLevelup"}}</button>
{{else}}
{{#if (not this.navigate.previous.disabled)}}
<button data-action="updateCurrentLevel" >{{this.navigate.previous.label}}</button>

View file

@ -8,7 +8,7 @@
<div class="settings-items">
{{#each move.effects}}
{{> "systems/daggerheart/templates/settings/components/settings-item-line.hbs" id=this.id type="effect" }}
{{> "systems/daggerheart/templates/settings/components/settings-item-line.hbs" actionId=../move.id id=this.id type="effect" }}
{{/each}}
</div>
</fieldset>

View file

@ -5,14 +5,14 @@
>
{{#if hasIcon}}
<fieldset class="one-column">
<legend>{{localize "Icon"}}</legend>
<legend>{{localize "DAGGERHEART.GENERAL.icon"}}</legend>
<input type="text" name="icon" value="{{move.icon}}" />
</fieldset>
{{/if}}
<fieldset class="one-column">
<legend>{{localize "Description"}}</legend>
<legend>{{localize "DAGGERHEART.GENERAL.description"}}</legend>
<prose-mirror name="description" value="{{move.description}}">
{{{ move.enrichedDescription }}}

View file

@ -34,7 +34,7 @@
</div>
<div class="toggleable-row">
{{formGroup settingFields.schema.fields.currency.fields.coins.fields.label value=settingFields._source.currency.coins.label localize=true}}
<input type="checkbox" {{checked settingFields._source.currency.coins.enabled}} disabled />
<input type="checkbox" name="currency.coins.enabled" {{checked settingFields._source.currency.coins.enabled}} />
</div>
<div class="toggleable-row">
{{formGroup settingFields.schema.fields.currency.fields.handfuls.fields.label value=settingFields._source.currency.handfuls.label localize=true}}

View file

@ -4,10 +4,11 @@
{{formGroup fields.disabled value=source.disabled rootId=rootId}}
{{#if isActorEffect}}
{{formGroup fields.origin value=source.origin rootId=rootId disabled=true}}
{{formGroup fields.origin value=source.origin rootId=rootId disabled=true}}
{{/if}}
{{#if isItemEffect}}
{{formGroup fields.transfer value=source.transfer rootId=rootId label=legacyTransfer.label hint=(localize "DAGGERHEART.EFFECTS.Attachments.transferHint")}}
{{formGroup fields.transfer value=source.transfer rootId=rootId label=legacyTransfer.label hint=(localize "DAGGERHEART.EFFECTS.Attachments.transferHint")}}
{{/if}}
{{formGroup fields.statuses value=source.statuses options=statuses rootId=rootId classes="statuses"}}

View file

@ -64,9 +64,9 @@
</div>
<ul class="items-sidebar-list">
{{> 'daggerheart.inventory-item-compact'
item=document.system.attack
type='action'
noCompendiumEdit=true
item=document.system.attack
type='attack'
noCompendiumEdit=true
}}
</ul>
</div>

View file

@ -12,22 +12,24 @@
</a>
</div>
<div class="currency-section">
{{#each this.inventory.currencies as | currency |}}
{{#if currency.enabled}}
<div class="input">
<span>{{localize currency.label}}</span>
{{formInput currency.field value=currency.value enriched=currency.value toggled=true}}
</div>
{{/if}}
{{/each}}
</div>
{{#if this.inventory.hasCurrency}}
<div class="currency-section">
{{#each this.inventory.currencies as | currency |}}
{{#if currency.enabled}}
<div class="input">
<span>{{localize currency.label}}</span>
{{formInput currency.field value=currency.value enriched=currency.value toggled=true}}
</div>
{{/if}}
{{/each}}
</div>
{{/if}}
<div class="items-section">
{{> 'daggerheart.inventory-items'
title='TYPES.Item.weapon'
type='weapon'
collection=document.itemTypes.weapon
collection=@root.inventory.weapons
isGlassy=true
canCreate=true
hideResources=true
@ -35,7 +37,7 @@
{{> 'daggerheart.inventory-items'
title='TYPES.Item.armor'
type='armor'
collection=document.itemTypes.armor
collection=@root.inventory.armor
isGlassy=true
canCreate=true
hideResources=true
@ -43,14 +45,14 @@
{{> 'daggerheart.inventory-items'
title='TYPES.Item.consumable'
type='consumable'
collection=document.itemTypes.consumable
collection=@root.inventory.consumables
isGlassy=true
canCreate=true
}}
{{> 'daggerheart.inventory-items'
title='TYPES.Item.loot'
type='loot'
collection=document.itemTypes.loot
collection=@root.inventory.loot
isGlassy=true
canCreate=true
showActions=true

View file

@ -104,16 +104,16 @@
</div>
<ul class="items-sidebar-list">
{{#if document.system.usedUnarmed}}
{{> 'daggerheart.inventory-item-compact'
{{> 'daggerheart.inventory-item-compact'
item=document.system.usedUnarmed
type='action'
}}
type='attack'
}}
{{/if}}
{{#each document.items as |item|}}
{{#if item.system.equipped}}
{{> 'daggerheart.inventory-item-compact'
item=item
type=item.type
item=item
type=item.type
}}
{{/if}}
{{/each}}

View file

@ -28,7 +28,7 @@
<ul class="items-list">
{{> 'daggerheart.inventory-item-compact'
item=document.system.attack
type='action'
type='attack'
hideTooltip=true
}}
</ul>

View file

@ -15,44 +15,25 @@
</a>
</div>
<div class="currency-section">
{{#each this.inventory.currencies as | currency |}}
{{#if currency.enabled}}
<div class="input">
<span>{{localize currency.label}}</span>
{{formInput currency.field value=currency.value enriched=currency.value toggled=true}}
</div>
{{/if}}
{{/each}}
{{!-- <div class="input">
<span>{{localize this.inventory.currency.coins}}</span>
{{formInput systemFields.gold.fields.coins value=source.system.gold.coins enriched=source.system.gold.coins
localize=true toggled=true}}
{{#if inventory.hasCurrency}}
<div class="currency-section">
{{#each this.inventory.currencies as | currency |}}
{{#if currency.enabled}}
<div class="input">
<span>{{localize currency.label}}</span>
{{formInput currency.field value=currency.value enriched=currency.value toggled=true}}
</div>
{{/if}}
{{/each}}
</div>
<div class="input">
<span>{{localize this.inventory.currency.handfuls}}</span>
{{formInput systemFields.gold.fields.handfuls value=source.system.gold.handfuls
enriched=source.system.gold.handfuls localize=true toggled=true}}
</div>
<div class="input">
<span>{{localize this.inventory.currency.bags}}</span>
{{formInput systemFields.gold.fields.bags value=source.system.gold.bags enriched=source.system.gold.bags
localize=true toggled=true}}
</div>
<div class="input">
<span>{{localize this.inventory.currency.chests}}</span>
{{formInput systemFields.gold.fields.chests value=source.system.gold.chests
enriched=source.system.gold.chests localize=true toggled=true}}
</div> --}}
</div>
{{/if}}
<div class="items-section">
{{> 'daggerheart.inventory-items'
title='TYPES.Item.weapon'
type='weapon'
actorType='party'
collection=document.itemTypes.weapon
collection=@root.inventory.weapons
isGlassy=true
canCreate=true
hideResources=true
@ -62,7 +43,7 @@
title='TYPES.Item.armor'
type='armor'
actorType='party'
collection=document.itemTypes.armor
collection=@root.inventory.armor
isGlassy=true
canCreate=true
hideResources=true
@ -72,7 +53,7 @@
title='TYPES.Item.consumable'
type='consumable'
actorType='party'
collection=document.itemTypes.consumable
collection=@root.inventory.consumables
isGlassy=true
canCreate=true
hideContextMenu=true
@ -81,7 +62,7 @@
title='TYPES.Item.loot'
type='loot'
actorType='party'
collection=document.itemTypes.loot
collection=@root.inventory.loot
isGlassy=true
canCreate=true
hideContextMenu=true

View file

@ -2,7 +2,7 @@
<h2>{{localize "DAGGERHEART.APPLICATIONS.DaggerheartMenu.title"}}</h2>
<fieldset>
<legend>{{localize "Refresh Features"}}</legend>
<legend>{{localize "DAGGERHEART.APPLICATIONS.DaggerheartMenu.refreshFeatures"}}</legend>
<div class="menu-refresh-container">
<div class="menu-refresh-inner-container">

View file

@ -33,7 +33,7 @@
class="dice reroll-button {{../dice}}"
data-die-index="0" data-type="damage" data-damage-type="{{@../../../key}}" data-part="{{@../../key}}" data-dice="{{@../key}}" data-result="{{@key}}"
>
{{#if hasRerolls}}<i class="fa-solid fa-dice dice-rerolled" data-tooltip="{{localize "Rerolled"}}"></i>{{/if}}
{{#if hasRerolls}}<i class="fa-solid fa-dice dice-rerolled" data-tooltip="{{localize "DAGGERHEART.GENERAL.rerolled"}}"></i>{{/if}}
{{result}}
</div>
</div>

View file

@ -64,6 +64,12 @@
{{/if}}
</strong>
{{#if (and combats.length user.isGM)}}
<div class="encounter-battlepoints" data-tooltip="#battlepoints#" data-combat-id="{{combat.id}}">
{{battlepoints.current}}/{{battlepoints.max}} BP{{#if battlepoints.hasModifierBP}}*{{/if}}
</div>
{{/if}}
{{!-- Combat Controls --}}
<div class="inner-controls">
{{#if hasCombat}}

View file

@ -44,7 +44,7 @@
</div>
<div class="tooltip-information">
<label>{{localize "DAGGERHEART.GENERAL.damage"}}</label>
<div>{{damageFormula item.system.attack item}}</div>
<div>{{damageFormula item.system.attack}}</div>
</div>
</div>

View file

@ -4,22 +4,28 @@
<div class="tooltip-description">{{{description}}}</div>
<div class="tooltip-information-section spaced">
<div class="tooltip-information">
<label>{{localize "DAGGERHEART.GENERAL.Trait.single"}}</label>
{{#with (lookup config.ACTOR.abilities attack.roll.trait) as | trait |}}
<div>{{localize trait.label}}</div>
{{/with}}
</div>
<div class="tooltip-information">
<label>{{localize "DAGGERHEART.GENERAL.range"}}</label>
{{#with (lookup config.GENERAL.range attack.range) as | range |}}
<div>{{localize range.label}}</div>
{{/with}}
</div>
{{#if (lookup config.ACTOR.abilities attack.roll.trait)}}
<div class="tooltip-information">
<label>{{localize "DAGGERHEART.GENERAL.Trait.single"}}</label>
{{#with (lookup config.ACTOR.abilities attack.roll.trait) as | trait |}}
<div>{{localize trait.label}}</div>
{{/with}}
</div>
{{/if}}
{{#if (lookup config.GENERAL.range attack.range)}}
<div class="tooltip-information">
<label>{{localize "DAGGERHEART.GENERAL.range"}}</label>
{{#with (lookup config.GENERAL.range attack.range) as | range |}}
<div>{{localize range.label}}</div>
{{/with}}
</div>
{{/if}}
<div class="tooltip-information">
<label>{{localize "DAGGERHEART.GENERAL.damage"}}</label>
<div>{{{damageFormula attack parent}}}</div>
<div>{{{damageFormula attack}}}</div>
</div>
<div class="tooltip-information">
<label>{{localize "DAGGERHEART.GENERAL.damageType"}}</label>

View file

@ -0,0 +1,29 @@
<div class="daggerheart dh-style tooltip">
<div class="battlepoint-categories-container">
<h3>{{localize "Adversaries"}} ({{currentBP}}/{{maxBP}})</h3>
{{#each categories as |category key|}}
{{#each category as |grouping index|}}
<div class="battlepoint-grouping-container">
{{#if grouping.nr}}
<label>{{key}} BP: {{concat (localize grouping.description) ' ' '('grouping.nr 'x)'}}</label>
{{else}}
<label class="unselected-grouping">{{key}} BP - {{localize grouping.description}}</label>
{{/if}}
</div>
{{/each}}
{{/each}}
</div>
<div class="battlepoint-toggles-container">
<h3>{{localize "Modifiers"}}</h3>
{{#each toggles as |toggle|}}
<div class="battlepoint-toggle-container {{#if (and toggle.disabled (not toggle.checked))}}inactive{{/if}}">
{{#if toggle.disabled}}
<i class="grouping-lock fa-solid {{#if toggle.checked}}fa-lock{{else}}fa-unlock{{/if}}"></i>
{{else}}
<input type="checkbox" data-combat-id="{{@root.combatId}}" data-category="{{toggle.categoryKey}}" data-grouping="{{toggle.toggleKey}}" {{checked toggle.checked}} />
{{/if}}
<label class="unselected-grouping">{{toggle.categoryKey}} BP: {{localize toggle.description}}</label>
</div>
{{/each}}
</div>
</div>

View file

@ -9,19 +9,19 @@
<div class="tooltip-information-section spaced">
{{#with item.system.beastformAttackData}}
<div class="tooltip-information">
<label>{{localize "Main Trait"}}</label>
<label>{{localize "DAGGERHEART.ITEMS.Beastform.mainTrait"}}</label>
<div>{{this.trait}}</div>
</div>
<div class="tooltip-information">
<label>{{localize "Trait Bonus"}}</label>
<label>{{localize "DAGGERHEART.ITEMS.Beastform.traitBonus"}}</label>
<div>{{this.traitBonus}}</div>
</div>
<div class="tooltip-information">
<label>{{localize "Evasion"}}</label>
<label>{{localize "DAGGERHEART.GENERAL.evasion"}}</label>
<div>{{this.evasionBonus}}</div>
</div>
<div class="tooltip-information">
<label>{{localize "Damage"}}</label>
<label>{{localize "DAGGERHEART.GENERAL.damage"}}</label>
<div>{{concat this.damageDice ' ' this.damageBonus}} <i class="fa-solid fa-hand-fist"></i></div>
</div>
{{/with}}

View file

@ -30,7 +30,7 @@
</div>
<div class="tooltip-information">
<label>{{localize "DAGGERHEART.GENERAL.damage"}}</label>
<div>{{{damageFormula item.system.attack item.parent}}}</div>
<div>{{{damageFormula item.system.attack}}}</div>
</div>
<div class="tooltip-information">
<label>{{localize "DAGGERHEART.GENERAL.damageType"}}</label>