mirror of
https://github.com/Foundryborne/daggerheart.git
synced 2026-04-22 15:33:37 +02:00
Merged with v14-Dev
This commit is contained in:
commit
6bf0fffcb7
735 changed files with 9587 additions and 6016 deletions
|
|
@ -1,12 +1,12 @@
|
|||
|
||||
<fieldset class="one-column">
|
||||
<legend>
|
||||
<legend class="with-icon">
|
||||
{{#if (eq @root.source.type 'healing')}}
|
||||
{{localize "DAGGERHEART.GENERAL.healing"}}
|
||||
{{else}}
|
||||
{{localize "DAGGERHEART.GENERAL.damage"}}
|
||||
{{/if}}
|
||||
{{#unless (eq path 'system.attack.')}}<a><i class="fa-solid fa-plus icon-button" data-action="addDamage"></i></a>{{/unless}}
|
||||
{{#unless (eq path 'system.attack.')}}<a data-action="addDamage" {{#if @root.allDamageTypesUsed}}disabled{{/if}}><i class="fa-solid fa-plus icon-button"></i></a>{{/unless}}
|
||||
</legend>
|
||||
<div class="nest-inputs space-between">
|
||||
{{#if @root.hasBaseDamage}}
|
||||
|
|
@ -16,75 +16,74 @@
|
|||
{{formField directField value=source.direct name=(concat path "damage.direct") localize=true classes="checkbox"}}
|
||||
{{/unless}}
|
||||
</div>
|
||||
{{#each source.parts as |dmg index|}}
|
||||
{{#if (and @root.hasBaseDamage @root.source.damage.includeBase)}}
|
||||
{{setVar 'realIndex' (add index -1)}}
|
||||
{{else}}
|
||||
{{setVar 'realIndex' index}}
|
||||
{{/if}}
|
||||
|
||||
{{!-- Handlebars uses Symbol.Iterator to produce index|key. This isn't compatible with our parts object, so we instead use applyTo, which is the same value --}}
|
||||
{{#each source.parts as |dmg|}}
|
||||
<div class="nest-inputs">
|
||||
<fieldset{{#if dmg.base}} disabled{{/if}} class="one-column{{#if ../path}} no-style{{/if}}">
|
||||
<legend class="with-icon">
|
||||
{{localize (concat "DAGGERHEART.CONFIG.HealingType." dmg.applyTo ".name")}}
|
||||
{{#unless (or dmg.base ../path)}}
|
||||
<a data-action="removeDamage" data-key="{{dmg.applyTo}}"><i class="fas fa-trash"></i></a>
|
||||
{{/unless}}
|
||||
</legend>
|
||||
|
||||
{{#if (and (not @root.isNPC) @root.hasRoll (not dmg.base))}}
|
||||
{{formField ../fields.resultBased value=dmg.resultBased name=(concat "damage.parts." realIndex ".resultBased") localize=true classes="checkbox"}}
|
||||
{{formField ../fields.resultBased value=dmg.resultBased name=(concat "damage.parts." dmg.applyTo ".resultBased") localize=true classes="checkbox"}}
|
||||
{{/if}}
|
||||
{{#if (and (not @root.isNPC) @root.hasRoll (not dmg.base) dmg.resultBased)}}
|
||||
<div class="nest-inputs">
|
||||
<fieldset class="one-column">
|
||||
<legend>{{localize "DAGGERHEART.GENERAL.withThing" thing=(localize "DAGGERHEART.GENERAL.hope")}}</legend>
|
||||
{{> formula fields=../fields.value.fields type=../fields.type dmg=dmg source=dmg.value target="value" realIndex=realIndex path=../path}}
|
||||
{{> formula fields=../fields.value.fields type=../fields.type dmg=dmg source=dmg.value target="value" key=dmg.applyTo path=../path}}
|
||||
</fieldset>
|
||||
<fieldset class="one-column">
|
||||
<legend>{{localize "DAGGERHEART.GENERAL.withThing" thing=(localize "DAGGERHEART.GENERAL.fear")}}</legend>
|
||||
{{> formula fields=../fields.valueAlt.fields type=../fields.type dmg=dmg source=dmg.valueAlt target="valueAlt" realIndex=realIndex path=../path}}
|
||||
{{> formula fields=../fields.valueAlt.fields type=../fields.type dmg=dmg source=dmg.valueAlt target="valueAlt" key=dmg.applyTo path=../path}}
|
||||
</fieldset>
|
||||
</div>
|
||||
{{else}}
|
||||
<fieldset{{#if dmg.base}} disabled{{/if}} class="one-column">
|
||||
<legend>{{localize "DAGGERHEART.GENERAL.formula"}}</legend>
|
||||
{{> formula fields=../fields.value.fields type=../fields.type dmg=dmg source=dmg.value target="value" realIndex=realIndex path=../path}}
|
||||
</fieldset>
|
||||
{{> formula fields=../fields.value.fields type=../fields.type dmg=dmg source=dmg.value target="value" key=dmg.applyTo path=../path}}
|
||||
{{/if}}
|
||||
<div class="nest-inputs">
|
||||
{{formField ../fields.applyTo value=dmg.applyTo name=(concat ../path "damage.parts." realIndex ".applyTo") localize=true}}
|
||||
{{#if (and (eq dmg.applyTo 'hitPoints') (ne @root.source.type 'healing'))}}
|
||||
{{formField ../fields.type value=dmg.type name=(concat ../path "damage.parts." realIndex ".type") localize=true}}
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
{{#if (and (eq dmg.applyTo 'hitPoints') (ne @root.source.type 'healing'))}}
|
||||
{{formField ../fields.type value=dmg.type name=(concat ../path "damage.parts." dmg.applyTo ".type") localize=true}}
|
||||
{{/if}}
|
||||
|
||||
{{#if ../horde}}
|
||||
<fieldset class="one-column">
|
||||
<legend>{{localize "DAGGERHEART.ACTORS.Adversary.hordeDamage"}}</legend>
|
||||
<div class="nest-inputs">
|
||||
<input type="hidden" name="{{../path}}damage.parts.{{realIndex}}.valueAlt.multiplier" value="flat">
|
||||
{{formField ../fields.valueAlt.fields.flatMultiplier value=dmg.valueAlt.flatMultiplier name=(concat ../path "damage.parts." realIndex ".valueAlt.flatMultiplier") label="DAGGERHEART.ACTIONS.Settings.multiplier" classes="inline-child" localize=true }}
|
||||
{{formField ../fields.valueAlt.fields.dice value=dmg.valueAlt.dice name=(concat ../path "damage.parts." realIndex ".valueAlt.dice") classes="inline-child" localize=true}}
|
||||
{{formField ../fields.valueAlt.fields.bonus value=dmg.valueAlt.bonus name=(concat ../path "damage.parts." realIndex ".valueAlt.bonus") localize=true classes="inline-child"}}
|
||||
<input type="hidden" name="{{../path}}damage.parts.{{dmg.applyTo}}.valueAlt.multiplier" value="flat">
|
||||
{{formField ../fields.valueAlt.fields.flatMultiplier value=dmg.valueAlt.flatMultiplier name=(concat ../path "damage.parts." dmg.applyTo ".valueAlt.flatMultiplier") label="DAGGERHEART.ACTIONS.Settings.multiplier" classes="inline-child" localize=true }}
|
||||
{{formField ../fields.valueAlt.fields.dice value=dmg.valueAlt.dice name=(concat ../path "damage.parts." dmg.applyTo ".valueAlt.dice") classes="inline-child" localize=true}}
|
||||
{{formField ../fields.valueAlt.fields.bonus value=dmg.valueAlt.bonus name=(concat ../path "damage.parts." dmg.applyTo ".valueAlt.bonus") localize=true classes="inline-child"}}
|
||||
</div>
|
||||
</fieldset>
|
||||
{{/if}}
|
||||
<input type="hidden" name="damage.parts.{{realIndex}}.base" value="{{dmg.base}}">
|
||||
<input type="hidden" name="{{concat ../path "damage.parts." dmg.applyTo ".base"}}" value="{{dmg.base}}">
|
||||
</fieldset>
|
||||
{{#unless (or dmg.base ../path)}}<div class="fas fa-trash" data-action="removeDamage" data-index="{{realIndex}}"></div>{{/unless}}
|
||||
</div>
|
||||
{{/each}}
|
||||
</fieldset>
|
||||
|
||||
{{#*inline "formula"}}
|
||||
{{#unless dmg.base}}
|
||||
{{formField fields.custom.fields.enabled value=source.custom.enabled name=(concat path "damage.parts." realIndex "." target ".custom.enabled") classes="checkbox" localize=true}}
|
||||
{{formField fields.custom.fields.enabled value=source.custom.enabled name=(concat path "damage.parts." key "." target ".custom.enabled") classes="checkbox" localize=true}}
|
||||
{{/unless}}
|
||||
{{#if source.custom.enabled}}
|
||||
{{formField fields.custom.fields.formula value=source.custom.formula name=(concat path "damage.parts." realIndex "." target ".custom.formula") localize=true}}
|
||||
{{formField fields.custom.fields.formula value=source.custom.formula name=(concat path "damage.parts." key "." target ".custom.formula") localize=true}}
|
||||
{{else}}
|
||||
<div class="nest-inputs">
|
||||
{{#unless @root.isNPC}}
|
||||
{{formField fields.multiplier value=source.multiplier name=(concat path "damage.parts." realIndex "." target ".multiplier") localize=true}}
|
||||
{{formField fields.multiplier value=source.multiplier name=(concat path "damage.parts." key "." target ".multiplier") localize=true}}
|
||||
{{/unless}}
|
||||
{{#if (eq source.multiplier 'flat')}}{{formField fields.flatMultiplier value=source.flatMultiplier name=(concat path "damage.parts." realIndex "." target ".flatMultiplier") localize=true }}{{/if}}
|
||||
{{formField fields.dice value=source.dice name=(concat path "damage.parts." realIndex "." target ".dice") localize=true}}
|
||||
{{formField fields.bonus value=source.bonus name=(concat path "damage.parts." realIndex "." target ".bonus") localize=true}}
|
||||
{{#if (eq source.multiplier 'flat')}}{{formField fields.flatMultiplier value=source.flatMultiplier name=(concat path "damage.parts." key "." target ".flatMultiplier") localize=true }}{{/if}}
|
||||
{{formField fields.dice value=source.dice name=(concat path "damage.parts." key "." target ".dice") localize=true}}
|
||||
{{formField fields.bonus value=source.bonus name=(concat path "damage.parts." key "." target ".bonus") localize=true}}
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#if @root.isNPC}}
|
||||
<input type="hidden" name="{{path}}damage.parts.{{realIndex}}.{{target}}.multiplier" value="flat">
|
||||
<input type="hidden" name="{{path}}damage.parts.{{key}}.{{target}}.multiplier" value="flat">
|
||||
{{/if}}
|
||||
{{/inline}}
|
||||
|
|
@ -7,53 +7,57 @@
|
|||
<div class="section-container padded">
|
||||
<div class="resources-container">
|
||||
<div class="resource-container">
|
||||
<h4 class="armor-title">{{localize "DAGGERHEART.APPLICATIONS.DamageReduction.armorMarks"}}</h4>
|
||||
<div class="markers-subtitle">{{armorMarks}}/{{armorScore}}</div>
|
||||
<h4 class="armor-title">{{localize "DAGGERHEART.APPLICATIONS.DamageReduction.maxUseableArmor"}}</h4>
|
||||
<div class="markers-subtitle">{{availableArmor}}</div>
|
||||
</div>
|
||||
{{#if this.stress}}
|
||||
<div class="resource-container">
|
||||
<h4 class="armor-title">{{localize "DAGGERHEART.APPLICATIONS.DamageReduction.stress"}}</h4>
|
||||
<div class="markers-subtitle">{{this.stress.value}}/{{this.stress.max}}</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="section-container">
|
||||
<h4 class="mark-selection divider">
|
||||
<div class="mark-selection-inner">
|
||||
{{#each marks.armor}}
|
||||
<div
|
||||
class="mark-container {{#if this.selected}}selected{{/if}}"
|
||||
data-action="setMarks" data-key="{{@key}}" data-type="armor"
|
||||
>
|
||||
<i class="fa-solid fa-shield"></i>
|
||||
</div>
|
||||
{{/each}}
|
||||
<div class="section-container full-width">
|
||||
{{#each marks.armor as |source|}}
|
||||
<div class="mark-selection">
|
||||
<h4 class="divider">{{source.label}}</h4>
|
||||
<div class="mark-selection-inner">
|
||||
{{#each source.marks}}
|
||||
<a
|
||||
class="mark-container {{#if this.selected}}selected{{/if}} {{#if this.spent}}spent{{/if}} {{#if this.disabled}}inactive{{/if}}"
|
||||
data-action="setMarks" data-type="armor" data-path="{{concat "armor." @../key ".marks." @key}}" data-id="{{@key}}"
|
||||
{{#if this.disabled}}disabled{{/if}}
|
||||
>
|
||||
<i class="fa-solid fa-shield"></i>
|
||||
</a>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
{{/each}}
|
||||
{{#if usesStressArmor}}
|
||||
<div class="mark-selection">
|
||||
<h4 class="divider">{{localize "Stress"}}</h4>
|
||||
<div class="mark-selection-inner">
|
||||
{{#each marks.stress}}
|
||||
<div
|
||||
class="mark-container {{#if this.selected}}selected{{/if}} {{#if (not @root.basicMarksUsed)}}inactive{{/if}}"
|
||||
{{#if @root.basicMarksUsed}}data-action="setMarks"{{/if}} data-key="{{@key}}" data-type="stress" data-tooltip="{{#if @root.basicMarksUsed}}{{localize "DAGGERHEART.APPLICATIONS.DamageReduction.armorWithStress"}}{{else}}{{localize "DAGGERHEART.APPLICATIONS.DamageReduction.unncessaryStress"}}{{/if}}"
|
||||
{{#if @root.basicMarksUsed}}data-action="setMarks"{{/if}} data-type="stress" data-path="{{concat "stress." @key}}" data-tooltip="{{#if @root.basicMarksUsed}}{{localize "DAGGERHEART.APPLICATIONS.DamageReduction.armorWithStress"}}{{else}}{{localize "DAGGERHEART.APPLICATIONS.DamageReduction.unncessaryStress"}}{{/if}}"
|
||||
>
|
||||
<i class="fa-solid fa-bolt"></i>
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
</h4>
|
||||
<div class="markers-subtitle bold">{{localize "DAGGERHEART.APPLICATIONS.DamageReduction.usedMarks"}}</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
{{#if availableStressReductions}}
|
||||
<div class="resources-container">
|
||||
<div class="resource-container">
|
||||
<h4 class="armor-title">{{localize "DAGGERHEART.APPLICATIONS.DamageReduction.stressReduction"}}</h4>
|
||||
<h4 class="armor-title divider">{{localize "DAGGERHEART.APPLICATIONS.DamageReduction.stressReduction"}}</h4>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#each availableStressReductions}}
|
||||
<div class="section-container">
|
||||
<h4 class="chip-container divider">
|
||||
<h4 class="chip-container">
|
||||
<div class="chip-inner-container selectable {{#if (or this.any (eq this.from @root.currentDamage))}}active{{/if}} {{#if this.selected}}selected{{/if}}" data-action="useStressReduction" data-reduction="{{@key}}">
|
||||
{{#if this.any}}
|
||||
{{localize "DAGGERHEART.GENERAL.any"}}
|
||||
|
|
@ -74,7 +78,7 @@
|
|||
{{#if reduceSeverity}}
|
||||
<div class="resources-container">
|
||||
<div class="resource-container">
|
||||
<h4 class="armor-title">{{localize "DAGGERHEART.APPLICATIONS.DamageReduction.reduceSeverity" nr=reduceSeverity}}</h4>
|
||||
<h4 class="armor-title divider">{{localize "DAGGERHEART.APPLICATIONS.DamageReduction.reduceSeverity" nr=reduceSeverity}}</h4>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
|
@ -82,7 +86,7 @@
|
|||
{{#if thresholdImmunities}}
|
||||
<div class="resources-container">
|
||||
<div class="resource-container">
|
||||
<h4 class="armor-title">{{localize "DAGGERHEART.APPLICATIONS.DamageReduction.thresholdImmunities"}}</h4>
|
||||
<h4 class="armor-title divider">{{localize "DAGGERHEART.APPLICATIONS.DamageReduction.thresholdImmunities"}}</h4>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
|
|
|||
|
|
@ -56,8 +56,8 @@
|
|||
{{/unless}}
|
||||
<div class="damage-section-controls">
|
||||
{{#if directDamage}}
|
||||
<select class="roll-mode-select" name="selectedRollMode">
|
||||
{{selectOptions rollModes selected=selectedRollMode valueAttr="action" labelAttr="label" localize=true}}
|
||||
<select class="roll-mode-select" name="selectedMessageMode">
|
||||
{{selectOptions rollModes selected=selectedMessageMode valueAttr="action" labelAttr="label" localize=true}}
|
||||
</select>
|
||||
{{/if}}
|
||||
<button class="submit-btn" data-action="submitRoll">
|
||||
|
|
|
|||
|
|
@ -8,10 +8,4 @@
|
|||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{#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 "DAGGERHEART.APPLICATIONS.TagTeamSelect.title"}}</span>
|
||||
</div>
|
||||
{{/if}}
|
||||
</header>
|
||||
|
|
@ -189,8 +189,8 @@
|
|||
{{/if}}
|
||||
|
||||
<div class="roll-dialog-controls">
|
||||
<select class="roll-mode-select" name="selectedRollMode">
|
||||
{{selectOptions rollModes selected=selectedRollMode valueAttr="action" labelAttr="label" localize=true}}
|
||||
<select class="roll-mode-select" name="selectedMessageMode">
|
||||
{{selectOptions rollModes selected=selectedMessageMode valueAttr="action" labelAttr="label" localize=true}}
|
||||
</select>
|
||||
<button class="submit-btn" data-action="submitRoll"{{#unless canRoll}} disabled{{/unless}}>
|
||||
<i class="fa-solid fa-dice"></i>
|
||||
|
|
|
|||
|
|
@ -1,110 +0,0 @@
|
|||
<div>
|
||||
<div class="tag-team-container">
|
||||
<fieldset>
|
||||
<legend>{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.partyTeam"}}</legend>
|
||||
|
||||
<div class="form-group flex-group">
|
||||
<label>{{localize "TYPES.Actor.character"}}</label>
|
||||
|
||||
<div class="form-fields">
|
||||
<select name="selectedAddMember">
|
||||
{{selectOptions memberOptions labelAttr="name" valueAttr="uuid" blank=""}}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="participants-container">
|
||||
{{#each members as |member|}}
|
||||
<div class="participant-outer-container {{#if member.selected}}selected{{/if}}" data-action="selectMessage" id="{{member.character.id}}">
|
||||
<div class="participant-container">
|
||||
<div class="participant-inner-container">
|
||||
<img src="{{member.character.img}}" />
|
||||
<div class="participant-labels">
|
||||
<div class="participant-label-title">{{member.character.name}}</div>
|
||||
<div class="participant-label-info">
|
||||
{{#if member.character.system.class.value}}
|
||||
<div class="participant-label-info-part">{{member.character.system.class.value.name}}</div>
|
||||
{{/if}}
|
||||
{{#if member.system.multiclass.value}}
|
||||
<div class="participant-label-info-part">{{member.character.system.multiclass.value.name}}</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a data-action="removeMember" data-character-id="{{member.character.id}}"><i class="fa-solid fa-trash"></i></a>
|
||||
</div>
|
||||
{{#if member.roll}}
|
||||
<div class="participant-roll-outer-container">
|
||||
<div class="participant-roll-container">
|
||||
<h4>
|
||||
<a data-action="unlinkMessage" id="{{member.character.id}}"><i class="fa-solid fa-link"></i></a>
|
||||
{{member.roll.system.title}}
|
||||
</h4>
|
||||
</div>
|
||||
<div class="participant-roll-container">
|
||||
<side-line-div class="invert"></side-line-div>
|
||||
<div class="participant-roll-text-container">
|
||||
{{member.roll.system.roll.total}}
|
||||
{{localize "DAGGERHEART.GENERAL.withThing" thing=member.roll.system.roll.result.label}}
|
||||
</div>
|
||||
<side-line-div></side-line-div>
|
||||
</div>
|
||||
{{#if member.roll.system.hasDamage}}
|
||||
<h4>{{localize "DAGGERHEART.GENERAL.damage"}}</h4>
|
||||
<div class="damage-values-container">
|
||||
{{#if member.damageValues}}
|
||||
{{#each member.damageValues as |damage|}}
|
||||
<div class="damage-container">
|
||||
<div>{{damage.name}}</div>
|
||||
<div>{{damage.total}}</div>
|
||||
</div>
|
||||
{{/each}}
|
||||
{{else}}
|
||||
{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.damageNotRolled"}}
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{else}}
|
||||
<div class="participant-empty-roll-container">
|
||||
{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.linkMessageHint"}}
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
<div class="roll-leader-container">
|
||||
<h4>
|
||||
<strong>{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.initiatingCharacter"}}</strong>
|
||||
<select name="initiator.id">
|
||||
{{selectOptions selectedCharacterOptions selected=initiator.character.id labelAttr="name" valueAttr="id" blank=""}}
|
||||
</select>
|
||||
</h4>
|
||||
<h4>
|
||||
<strong>{{localize "DAGGERHEART.GENERAL.Cost.single"}}</strong>
|
||||
<input type="text" data-dtype="Number" min="0" name="initiator.cost" value="{{initiator.cost}}" />
|
||||
</h4>
|
||||
</div>
|
||||
{{#if showResult}}
|
||||
{{#if selectedData.result}}
|
||||
<div class="result-container">
|
||||
<h4><strong>{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.title"}}:</strong> {{selectedData.result}}</h4>
|
||||
{{#if usesDamage}}
|
||||
<div class="result-damages-container">
|
||||
<label><strong>{{localize "DAGGERHEART.GENERAL.damage"}}:</strong></label>
|
||||
{{#each selectedData.damageValues as |damage|}}
|
||||
<div class="result-damage-container">
|
||||
{{damage.name}}
|
||||
{{damage.total}}
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
|
||||
<button data-action="createTagTeam" {{disabled createDisabled}}>{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.createTagTeam"}}</button>
|
||||
</div>
|
||||
</div>
|
||||
35
templates/dialogs/tagTeamDialog/initialization.hbs
Normal file
35
templates/dialogs/tagTeamDialog/initialization.hbs
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
<section class="initialization-container tab {{#if tabs.initialization.active}} active{{/if}}" data-group="{{tabs.initialization.group}}" data-tab="{{tabs.initialization.id}}">
|
||||
{{partId}}
|
||||
<h2>{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.selectParticipants"}}</h2>
|
||||
<div class="members-container">
|
||||
{{#each memberSelection as |member|}}
|
||||
<a
|
||||
class="member-container {{#unless member.selected}}inactive {{#if ../allselected}}locked{{/if}}{{/unless}}"
|
||||
data-action="toggleSelectMember" data-id="{{member.id}}" {{#if (and (not member.selected) ../allSelected)}}disabled{{/if}}
|
||||
>
|
||||
<span class="member-name">{{member.name}}</span>
|
||||
<img src="{{member.img}}" />
|
||||
</a>
|
||||
{{/each}}
|
||||
</div>
|
||||
|
||||
<div class="initiator-container {{#if initiatorDisabled}}inactive{{/if}}">
|
||||
<div class="form-group">
|
||||
<label>{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.FIELDS.initiator.memberId.label"}}</label>
|
||||
<div class="form-fields">
|
||||
<select name="initiator.memberId" {{#if initiatorDisabled}}disabled{{/if}}>
|
||||
{{selectOptions initiatorOptions selected=initiator.memberId blank="" }}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
{{formGroup tagTeamFields.initiator.fields.cost name="initiator.cost" value=initiator.cost disabled=initiatorDisabled localize=true }}
|
||||
</div>
|
||||
|
||||
<footer>
|
||||
<button type="button" data-action="startTagTeamRoll" {{#unless canStartTagTeam}}disabled{{/unless}}>{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.startTagTeamRoll"}} <i class="fa-solid fa-arrow-right-long"></i></button>
|
||||
<div class="finish-tools {{#unless canStartTagTeam}}inactive{{/unless}}">
|
||||
<span>{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.openDialogForAll"}}</span>
|
||||
<input type="checkbox" name="openForAllPlayers" {{#unless canStartTagTeam}}disabled{{/unless}} {{checked openForAllPlayers}} />
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
25
templates/dialogs/tagTeamDialog/parts/tagTeamDamageParts.hbs
Normal file
25
templates/dialogs/tagTeamDialog/parts/tagTeamDamageParts.hbs
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
{{#each damage as |damage key|}}
|
||||
<div class="roll-data {{#if isCritical}}critical{{/if}}">
|
||||
<div class="duality-label">
|
||||
<span>{{localize (concat "DAGGERHEART.CONFIG.HealingType." key ".name")}}:</span>
|
||||
<span>{{damage.total}}</span>
|
||||
</div>
|
||||
{{#each damage.parts as |part|}}
|
||||
<div class="roll-dice-container">
|
||||
{{#each part.dice as |dice index|}}
|
||||
<a class="roll-dice" data-action="rerollDamageDice" data-member-key="{{@../../../key}}" data-damage-key="{{@../../key}}" data-part="{{@../index}}" data-dice="{{index}}">
|
||||
<span class="dice-label">{{dice.total}}</span>
|
||||
<img src="{{concat "systems/daggerheart/assets/icons/dice/hope/" dice.dice ".svg"}}" />
|
||||
</a>
|
||||
{{#unless @last}}
|
||||
<span class="roll-operator">+</span>
|
||||
{{/unless}}
|
||||
{{/each}}
|
||||
{{#if part.modifierTotal}}
|
||||
<span class="roll-operator">{{#if (gte part.modifierTotal 0)}}+{{else}}-{{/if}}</span>
|
||||
<span class="roll-value">{{positive part.modifierTotal}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
{{/each}}
|
||||
11
templates/dialogs/tagTeamDialog/rollSelection.hbs
Normal file
11
templates/dialogs/tagTeamDialog/rollSelection.hbs
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
<section class="roll-selection {{#if (and allHaveRolled tabs.tagTeamRoll.active)}}rendered{{/if}} tab {{#if tabs.tagTeamRoll.active}} active{{/if}}" data-group="{{tabs.tagTeamRoll.group}}">
|
||||
{{#if allHaveRolled}}
|
||||
<div class="roll-selection-container">
|
||||
{{#each members as |member key|}}
|
||||
<a class="select-roll-button" data-action="selectRoll" data-member-key="{{key}}">
|
||||
<i class="{{#if member.selected}}fa-solid fa-circle-check{{else}}fa-regular fa-circle inactive{{/if}}"></i>
|
||||
</a>
|
||||
{{/each}}
|
||||
</div>
|
||||
{{/if}}
|
||||
</section>
|
||||
126
templates/dialogs/tagTeamDialog/tagTeamMember.hbs
Normal file
126
templates/dialogs/tagTeamDialog/tagTeamMember.hbs
Normal file
|
|
@ -0,0 +1,126 @@
|
|||
|
||||
{{#with (lookup members partId)}}
|
||||
<fieldset class="team-member-container {{#if @root.allHaveRolled}}select-padding{{/if}} {{#unless isEditable}}inactive{{/unless}}" data-member-key="{{@root.partId}}">
|
||||
<div class="data-container">
|
||||
<div class="member-info">
|
||||
<img src="{{img}}" />
|
||||
<span class="member-name">{{name}}</span>
|
||||
</div>
|
||||
<div class="roll-setup">
|
||||
<div class="form-group">
|
||||
<div class="form-fields">
|
||||
<label>{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.rollType"}}</label>
|
||||
<select class="roll-type-select" data-member="{{@root.partId}}" {{#if hasRolled}}disabled{{/if}}>
|
||||
{{selectOptions ../rollTypes selected=rollType localize=true}}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
{{#if (or (not rollType) (eq rollType 'trait'))}}
|
||||
<div class="form-group">
|
||||
<div class="form-fields">
|
||||
<label>{{localize "DAGGERHEART.GENERAL.Trait.single"}}</label>
|
||||
<select name="{{concat "system.tagTeam.members." @root.partId ".rollChoice"}}" {{#if hasRolled}}disabled{{/if}}>
|
||||
{{selectOptions ../traitOptions selected=rollChoice localize=true blank=""}}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
{{else if (eq rollType 'damageAbility')}}
|
||||
<div class="form-group">
|
||||
<div class="form-fields">
|
||||
<label>{{localize "DAGGERHEART.CONFIG.TagTeamRollTypes.damageAbility"}}</label>
|
||||
<select name="{{concat "system.tagTeam.members." @root.partId ".rollChoice"}}" {{#if hasRolled}}disabled{{/if}}>
|
||||
{{selectOptions damageRollOptions selected=rollChoice localize=true blank=""}}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
{{else}}
|
||||
<div class="form-group">
|
||||
<div class="form-fields">
|
||||
<label>{{localize "DAGGERHEART.GENERAL.Ability.single"}}</label>
|
||||
<select name="{{concat "system.tagTeam.members." @root.partId ".rollChoice"}}" {{#if hasRolled}}disabled{{/if}}>
|
||||
{{selectOptions rollOptions selected=rollChoice localize=true blank=""}}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
||||
{{#if readyToRoll}}
|
||||
<div class="roll-container">
|
||||
<span class="roll-title">
|
||||
{{localize "DAGGERHEART.GENERAL.roll"}}
|
||||
<div class="roll-tools">
|
||||
<a class="roll-button" data-action="makeRoll" data-member="{{@root.partId}}">
|
||||
<img src="systems/daggerheart/assets/icons/dice/hope/d12.svg" />
|
||||
</a>
|
||||
|
||||
{{#if hasRolled}}
|
||||
<a class="delete-button" data-action="removeRoll" data-member="{{@root.partId}}">
|
||||
<i class="fa-solid fa-trash"></i>
|
||||
</a>
|
||||
{{/if}}
|
||||
</div>
|
||||
</span>
|
||||
|
||||
{{#if rollData}}
|
||||
{{#with rollData.options.roll}}
|
||||
<div class="roll-data {{#if this.isCritical}}critical{{else}}{{#if (eq this.result.duality 1)}}hope{{else}}fear{{/if}}{{/if}}">
|
||||
<div class="duality-label">{{this.total}} {{localize "DAGGERHEART.GENERAL.withThing" thing=this.result.label}}</div>
|
||||
<div class="roll-dice-container">
|
||||
<a class="roll-dice" data-action="rerollDice" data-member="{{@root.partId}}" data-dice-type="hope">
|
||||
<span class="dice-label">{{this.hope.value}}</span>
|
||||
<img src="{{concat "systems/daggerheart/assets/icons/dice/hope/" this.hope.dice ".svg"}}" />
|
||||
</a>
|
||||
<span class="roll-operator">+</span>
|
||||
<a class="roll-dice" data-action="rerollDice" data-member="{{@root.partId}}" data-dice-type="fear">
|
||||
<span class="dice-label">{{this.fear.value}}</span>
|
||||
<img src="{{concat "systems/daggerheart/assets/icons/dice/fear/" this.fear.dice ".svg"}}" />
|
||||
</a>
|
||||
{{#if this.advantage.type}}
|
||||
<span class="roll-operator">{{#if (eq this.advantage.type 1)}}+{{else}}-{{/if}}</span>
|
||||
<span class="roll-dice">
|
||||
<span class="dice-label">{{this.advantage.value}}</span>
|
||||
<img src="{{concat "systems/daggerheart/assets/icons/dice/" (ifThen (eq this.advantage.type 1) "adv/" "disadv/") this.advantage.dice ".svg"}}" />
|
||||
</span>
|
||||
{{/if}}
|
||||
<span class="roll-operator">{{#if (gte this.modifierTotal 0)}}+{{else}}-{{/if}}</span>
|
||||
<span class="roll-value">{{positive this.modifierTotal}}</span>
|
||||
</div>
|
||||
</div>
|
||||
{{/with}}
|
||||
{{else}}
|
||||
<span class="hint">{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.makeYourRoll"}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if rollData.options.hasDamage}}
|
||||
<div class="roll-container">
|
||||
<span class="roll-title">
|
||||
{{localize "DAGGERHEART.GENERAL.damage"}}
|
||||
<div class="roll-tools">
|
||||
<a class="roll-button" data-action="makeDamageRoll" data-member-key="{{@root.partId}}" {{#unless readyToRoll}}disabled{{/unless}}>
|
||||
<img src="systems/daggerheart/assets/icons/dice/hope/d20.svg" />
|
||||
</a>
|
||||
|
||||
{{#if damage}}
|
||||
<a class="delete-button" data-action="removeDamageRoll" data-member-key="{{@root.partId}}" {{#unless rollData.options.damage}}disabled{{/unless}}>
|
||||
<i class="fa-solid fa-trash"></i>
|
||||
</a>
|
||||
{{/if}}
|
||||
</div>
|
||||
</span>
|
||||
{{#if damage}}
|
||||
{{#if useCritDamage}}
|
||||
{{> "systems/daggerheart/templates/dialogs/tagTeamDialog/parts/tagTeamDamageParts.hbs" damage=critDamage isCritical=true }}
|
||||
{{else}}
|
||||
{{> "systems/daggerheart/templates/dialogs/tagTeamDialog/parts/tagTeamDamageParts.hbs" damage=damage }}
|
||||
{{/if}}
|
||||
{{else}}
|
||||
<span class="hint">{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.makeYourRoll"}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
</fieldset>
|
||||
{{/with}}
|
||||
38
templates/dialogs/tagTeamDialog/tagTeamRoll.hbs
Normal file
38
templates/dialogs/tagTeamDialog/tagTeamRoll.hbs
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
<section class="tag-team-roll tab {{#if tabs.tagTeamRoll.active}} active{{/if}}" data-group="{{tabs.tagTeamRoll.group}}" data-tab="{{tabs.tagTeamRoll.id}}">
|
||||
<div class="tag-team-roll-container {{#unless isEditable}}inactive{{/unless}}">
|
||||
<div class="results-container">
|
||||
<span class="result-container-label">{{localize "DAGGERHEART.GENERAL.result.plural"}}</span>
|
||||
<div class="results-inner-container">
|
||||
{{#if hintText}}
|
||||
<div class="hint">{{localize hintText}}</div>
|
||||
{{else}}
|
||||
{{#if joinedRoll.rollData}}
|
||||
<div class="result-container">
|
||||
<span class="result-section-label">{{localize "DAGGERHEART.GENERAL.dualityRoll"}}</span>
|
||||
<div class="result-info">
|
||||
<div class="damage-info">{{joinedRoll.rollData.options.roll.total}}</div>
|
||||
<div>{{localize "DAGGERHEART.GENERAL.withThing" thing=joinedRoll.rollData.options.roll.result.label}}</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#if hasDamage}}
|
||||
<div class="result-container">
|
||||
<span class="result-section-label">{{localize "DAGGERHEART.GENERAL.damage"}}</span>
|
||||
{{#each joinedRoll.rollData.options.damage as |damage key|}}
|
||||
<div class="result-info">
|
||||
<div>{{localize (concat "DAGGERHEART.CONFIG.HealingType." key ".name")}}</div>
|
||||
<div class="damage-info">{{damage.total}}</div>
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="finish-container">
|
||||
<button type="button" data-action="cancelRoll">{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.cancelTagTeamRoll"}}</button>
|
||||
<button type="button" data-action="finishRoll" {{#if hintText}}disabled{{/if}} class="finish-button">{{localize "DAGGERHEART.APPLICATIONS.TagTeamSelect.finishTagTeamRoll"}}</button>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
|
@ -4,13 +4,22 @@
|
|||
<input type="text" name="elevation" value="{{elevation}}" {{disabled (or locked (and isGamePaused (not isGM)))}}>
|
||||
</div>
|
||||
|
||||
<button type="button" class="control-icon" data-action="sort" data-direction="up" data-tooltip="HUD.ToFront">
|
||||
<img src="{{icons.up}}">
|
||||
<button type="button" class="control-icon" data-action="sort" data-tooltip="HUD.ToFrontOrBack">
|
||||
<i class="fa-solid fa-arrow-down-arrow-up" inert></i>
|
||||
</button>
|
||||
|
||||
<button type="button" class="control-icon" data-action="sort" data-direction="down" data-tooltip="HUD.ToBack">
|
||||
<img src="{{icons.down}}">
|
||||
{{#if canChangeLevel}}
|
||||
<button type="button" class="control-icon" data-action="togglePalette" data-palette="levels"
|
||||
aria-label="{{ localize "HUD.ChangeLevel" }}" data-tooltip>
|
||||
<i class="fa-solid fa-stairs" inert></i>
|
||||
</button>
|
||||
<div class="palette palette-list" data-palette="levels">
|
||||
{{#each levels as |level|}}
|
||||
<a class="palette-list-entry {{level.cssClass}}" data-action="level" data-level-id="{{level.id}}"><span>{{level.name}}</span></a>
|
||||
{{/each}}
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if hasCompanion}}
|
||||
<button type="button" class="control-icon clown-car" data-action="toggleCompanions" data-tooltip="{{#if companionOnCanvas}}{{localize "DAGGERHEART.APPLICATIONS.HUD.tokenHUD.retrieveCompanionTokens"}}{{else}}{{localize "DAGGERHEART.APPLICATIONS.HUD.tokenHUD.depositCompanionTokens"}}{{/if}}">
|
||||
<img {{#if companionOnCanvas}}class="flipped"{{/if}} src="{{icons.toggleClowncar}}">
|
||||
|
|
|
|||
|
|
@ -15,6 +15,7 @@
|
|||
</div>
|
||||
|
||||
{{formGroup settingFields.schema.fields.vulnerableAutomation value=settingFields._source.vulnerableAutomation localize=true}}
|
||||
{{formGroup settingFields.schema.fields.autoExpireActiveEffects value=settingFields._source.autoExpireActiveEffects localize=true}}
|
||||
{{formGroup settingFields.schema.fields.countdownAutomation value=settingFields._source.countdownAutomation localize=true}}
|
||||
{{formGroup settingFields.schema.fields.actionPoints value=settingFields._source.actionPoints localize=true}}
|
||||
{{formGroup settingFields.schema.fields.hordeDamage value=settingFields._source.hordeDamage localize=true}}
|
||||
|
|
|
|||
19
templates/sheets/activeEffect/change.hbs
Normal file
19
templates/sheets/activeEffect/change.hbs
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
<li data-index="{{index}}">
|
||||
<div class="key">
|
||||
<input type="text" class="effect-change-input" name="{{change.keyPath}}" value="{{change.key}}" />
|
||||
</div>
|
||||
<div class="type">
|
||||
<select name="{{change.typePath}}">
|
||||
{{selectOptions types selected=change.type localize=true}}
|
||||
</select>
|
||||
</div>
|
||||
<div class="value">
|
||||
{{formInput fields.value name=change.valuePath value=change.value elementType="input"}}
|
||||
</div>
|
||||
<div class="priority">
|
||||
{{formInput fields.priority name=change.priorityPath value=change.priority placeholder=defaultPriority}}
|
||||
</div>
|
||||
<div class="controls">
|
||||
<a class="inline-control icon" data-action="deleteChange"><i class="fa-solid fa-trash"></i></a>
|
||||
</div>
|
||||
</li>
|
||||
|
|
@ -1,31 +1,27 @@
|
|||
<section class="tab changes{{#if tab.active}} active{{/if}}" data-group="{{tab.group}}" data-tab="{{tab.id}}">
|
||||
<header>
|
||||
<div class="key">{{localize "EFFECT.ChangeKey"}}</div>
|
||||
<div class="mode">{{localize "EFFECT.ChangeMode"}}</div>
|
||||
<div class="value">{{localize "EFFECT.ChangeValue"}}</div>
|
||||
<div class="priority">{{localize "EFFECT.ChangePriority"}}</div>
|
||||
<div class="controls"><a data-action="addChange"><i class="fa-regular fa-square-plus"></i></a></div>
|
||||
<div class="key">{{localize "EFFECT.FIELDS.changes.element.key.label"}}</div>
|
||||
<div class="type">{{localize "EFFECT.FIELDS.changes.element.type.label"}}</div>
|
||||
<div class="value">{{localize "EFFECT.FIELDS.changes.element.value.label"}}</div>
|
||||
<div class="priority">{{localize "EFFECT.FIELDS.changes.element.priority.label"}}</div>
|
||||
<div class="controls">
|
||||
<a class="inline-control icon" data-action="addChange"><i class="fa-regular fa-square-plus"></i></a>
|
||||
</div>
|
||||
</header>
|
||||
<ol class="scrollable" data-changes>
|
||||
{{#each source.changes as |change i|}}
|
||||
{{#with ../fields.changes.element.fields as |changeFields|}}
|
||||
<li data-index="{{i}}">
|
||||
<div class="key">
|
||||
<input type="text" class="effect-change-input" name="{{concat "changes." i ".key"}}" value="{{change.key}}" />
|
||||
</div>
|
||||
<div class="mode">
|
||||
{{formInput changeFields.mode name=(concat "changes." i ".mode") value=change.mode choices=@root.modes}}
|
||||
</div>
|
||||
<div class="value">
|
||||
{{formInput changeFields.value name=(concat "changes." i ".value") value=change.value}}
|
||||
</div>
|
||||
<div class="priority">
|
||||
{{formInput changeFields.priority name=(concat "changes." i ".priority") value=change.priority
|
||||
placeholder=(lookup ../../priorities change.mode)}}
|
||||
</div>
|
||||
<div class="controls"><a data-action="deleteChange"><i class="fa-solid fa-trash"></i></a></div>
|
||||
</li>
|
||||
{{/with}}
|
||||
{{#each changes as |change|}}
|
||||
{{{change}}}
|
||||
{{/each}}
|
||||
</ol>
|
||||
</section>
|
||||
|
||||
<fieldset class="armor-change-container optional">
|
||||
<legend>
|
||||
{{localize "DAGGERHEART.GENERAL.armor"}}
|
||||
<input type="checkbox" class="armor-change-checkbox" data-index="{{typedChanges.armor.index}}" {{checked typedChanges.armor}} />
|
||||
</legend>
|
||||
|
||||
{{#if typedChanges.armor}}
|
||||
{{> "systems/daggerheart/templates/sheets/activeEffect/typeChanges/armorChange.hbs" typedChanges.armor fields=@root.systemFields.changes.element.types.armor.fields}}
|
||||
{{/if}}
|
||||
</fieldset>
|
||||
</section>
|
||||
|
|
|
|||
|
|
@ -4,7 +4,12 @@
|
|||
{{formGroup fields.disabled value=source.disabled rootId=rootId}}
|
||||
|
||||
{{#if isActorEffect}}
|
||||
{{formGroup fields.origin value=source.origin rootId=rootId disabled=true}}
|
||||
<div class="form-group">
|
||||
<label>{{localize "EFFECT.FIELDS.origin.label"}}</label>
|
||||
<div class="form-fields">
|
||||
<input type="text" value="{{source.origin}}" disabled />
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if isItemEffect}}
|
||||
|
|
@ -12,4 +17,5 @@
|
|||
{{/if}}
|
||||
|
||||
{{formGroup fields.statuses value=source.statuses options=statuses rootId=rootId classes="statuses"}}
|
||||
</section>
|
||||
{{formGroup fields.showIcon value=source.showIcon options=showIconOptions rootId=rootId}}
|
||||
</section>
|
||||
|
|
@ -1,4 +1,18 @@
|
|||
<section class="tab{{#if tab.active}} active{{/if}}" data-group="{{tab.group}}" data-tab="{{tab.id}}">
|
||||
<fieldset class="one-column optional">
|
||||
<legend>
|
||||
{{localize "DAGGERHEART.ACTIVEEFFECT.Config.stacking.title"}}
|
||||
<input type="checkbox" class="stacking-change-checkbox" {{checked source.system.stacking}} />
|
||||
</legend>
|
||||
|
||||
{{#if source.system.stacking}}
|
||||
<div class="two-columns even full-width">
|
||||
{{formGroup systemFields.stacking.fields.value value=source.system.stacking.value localize=true }}
|
||||
{{formGroup systemFields.stacking.fields.max value=source.system.stacking.max localize=true }}
|
||||
</div>
|
||||
{{/if}}
|
||||
</fieldset>
|
||||
|
||||
<fieldset class="one-column">
|
||||
<legend>{{localize "DAGGERHEART.ACTIVEEFFECT.Config.rangeDependence.title"}}</legend>
|
||||
|
||||
|
|
@ -7,34 +21,31 @@
|
|||
{{formGroup systemFields.rangeDependence.fields.target value=source.system.rangeDependence.target localize=true }}
|
||||
{{formGroup systemFields.rangeDependence.fields.range value=source.system.rangeDependence.range localize=true }}
|
||||
</fieldset>
|
||||
|
||||
<fieldset class="one-column">
|
||||
{{formGroup fields.duration.fields.seconds value=source.duration.seconds rootId=rootId}}
|
||||
{{formGroup fields.duration.fields.startTime value=source.duration.startTime rootId=rootId}}
|
||||
</fieldset>
|
||||
<legend>{{localize "EFFECT.DURATION.Label"}}</legend>
|
||||
|
||||
<fieldset class="one-column">
|
||||
<div class="form-group">
|
||||
<label>{{localize "EFFECT.DurationTurns"}}</label>
|
||||
<div class="form-fields">
|
||||
<label for="{{rootId}}-duration.rounds">{{localize "EFFECT.FIELDS.duration.rounds.label"}}</label>
|
||||
{{formInput fields.duration.fields.rounds value=source.duration.rounds
|
||||
id=(concat rootId "-duration.rounds")}}
|
||||
<label for="{{rootId}}-duration.turns">{{localize "EFFECT.FIELDS.duration.turns.label"}}</label>
|
||||
{{formInput fields.duration.fields.turns value=source.duration.turns
|
||||
id=(concat rootId "-duration.turns")}}
|
||||
{{formGroup systemFields.duration.fields.type value=source.system.duration.type localize=true }}
|
||||
|
||||
<div class="form-group slim duration-description">
|
||||
<div class="form-fields">
|
||||
{{formInput systemFields.duration.fields.description value=source.system.duration.description localize=true }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label>{{localize "EFFECT.StartTurns"}}</label>
|
||||
<div class="form-fields">
|
||||
<label for="{{rootId}}-duration.startRound">{{localize "EFFECT.FIELDS.duration.startRound.label"}}</label>
|
||||
{{formInput fields.duration.fields.startRound value=source.duration.startRound
|
||||
id=(concat rootId "-duration.startRound")}}
|
||||
<label for="{{rootId}}-duration.startTurn">{{localize "EFFECT.FIELDS.duration.startTurn.label"}}</label>
|
||||
{{formInput fields.duration.fields.startTurn value=source.duration.startTurn
|
||||
id=(concat rootId "-duration.startTurn")}}
|
||||
|
||||
<div class="custom-duration-section">
|
||||
{{formGroup fields.start.fields.time value=source.start.time localize=true }}
|
||||
<div class="form-group slim duration" data-duration>
|
||||
<label class="flexrow" for="{{rootId}}-duration.value">
|
||||
<span>{{localize "EFFECT.DURATION.Label"}}</span>
|
||||
<span class="warning" hidden><i class="fa-duotone fa-triangle-exclamation"></i></span>
|
||||
</label>
|
||||
<div class="form-fields">
|
||||
{{formInput fields.duration.fields.value value=source.duration.value id=(concat rootId "-duration.value")
|
||||
aria=(object label=(localize "EFFECT.FIELDS.duration.value.label"))}}
|
||||
{{formInput fields.duration.fields.units value=source.duration.units id=(concat rootId "-duration.units")
|
||||
options=durationUnits aria=(object label=(localize "EFFECT.FIELDS.duration.units.label")) localize=true }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</section>
|
||||
</section>
|
||||
28
templates/sheets/activeEffect/typeChanges/armorChange.hbs
Normal file
28
templates/sheets/activeEffect/typeChanges/armorChange.hbs
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
<header>
|
||||
<div>{{localize "EFFECT.FIELDS.changes.element.value.label"}}</div>
|
||||
<div>{{localize "DAGGERHEART.GENERAL.max"}}</div>
|
||||
<div>{{localize "DAGGERHEART.EFFECTS.ChangeTypes.armor.FIELDS.interaction.label"}}</div>
|
||||
<div>{{localize "EFFECT.FIELDS.changes.element.priority.label"}}</div>
|
||||
</header>
|
||||
<ol class="scrollable">
|
||||
<li data-index="{{index}}">
|
||||
<input type="hidden" name="{{concat "system.changes." index ".type"}}" value="{{type}}" />
|
||||
<input type="hidden" name="{{concat "system.changes." index ".phase"}}" value="{{phase}}" />
|
||||
{{formInput fields.value.fields.current name=(concat "system.changes." index ".value.current") value=value.current data-dtype="Number"}}
|
||||
{{formInput fields.value.fields.max name=(concat "system.changes." index ".value.max") value=value.max data-dtype="Number"}}
|
||||
{{formInput fields.value.fields.interaction name=(concat "system.changes." index ".value.interaction") value=value.interaction localize=true}}
|
||||
{{formInput fields.priority name=(concat "system.changes." index ".priority") value=priority}}
|
||||
</li>
|
||||
</ol>
|
||||
<div class="damage-thresholds-container">
|
||||
<div class="damage-threshold-title">
|
||||
<span>{{localize "DAGGERHEART.GENERAL.DamageThresholds.title"}}</span>
|
||||
<input type="checkbox" class="armor-damage-thresholds-checkbox" data-index="{{index}}" {{checked value.damageThresholds}} />
|
||||
</div>
|
||||
{{#if value.damageThresholds}}
|
||||
<div class="flexrow">
|
||||
{{formGroup fields.value.fields.damageThresholds.fields.major name=(concat "system.changes." index ".value.damageThresholds.major") value=value.damageThresholds.major localize=true }}
|
||||
{{formGroup fields.value.fields.damageThresholds.fields.severe name=(concat "system.changes." index ".value.damageThresholds.severe") value=value.damageThresholds.severe localize=true }}
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
|
@ -18,6 +18,7 @@
|
|||
collection=effects.inactives
|
||||
canCreate=true
|
||||
hideResources=true
|
||||
disabled=true
|
||||
}}
|
||||
</div>
|
||||
</section>
|
||||
|
|
@ -30,14 +30,14 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
{{#if document.system.armor.system.marks}}
|
||||
{{#if document.system.armorScore.max}}
|
||||
<div class="status-bar armor-slots">
|
||||
{{#if useResourcePips}}
|
||||
<div class='slot-value'>
|
||||
<div class="slot-bar">
|
||||
{{#times document.system.armorScore}}
|
||||
<a class='armor-slot' data-action='toggleArmor' data-value="{{add this 1}}">
|
||||
{{#if (gte ../document.system.armor.system.marks.value (add this 1))}}
|
||||
{{#times document.system.armorScore.max}}
|
||||
<a class='armor-slot' data-action='toggleArmor' data-value="{{add this 1}}">
|
||||
{{#if (gte ../document.system.armorScore.value (add this 1))}}
|
||||
<i class="fa-solid fa-shield"></i>
|
||||
{{else}}
|
||||
<i class="fa-solid fa-shield-halved"></i>
|
||||
|
|
@ -45,25 +45,29 @@
|
|||
</a>
|
||||
{{/times}}
|
||||
</div>
|
||||
<div class="slot-label">
|
||||
<a class="slot-label" data-action="toggleArmorMangement">
|
||||
<span class="label">{{localize "DAGGERHEART.GENERAL.armorSlots"}}</span>
|
||||
<span class="value">{{document.system.armor.system.marks.value}} / {{document.system.armorScore}}</span>
|
||||
</div>
|
||||
<div class="slot-value-container">
|
||||
<span class="value">{{document.system.armorScore.value}} / {{document.system.armorScore.max}}</span>
|
||||
<i class="fa-solid fa-gear"></i>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
{{else}}
|
||||
<div class='status-value'>
|
||||
<input class="bar-input armor-marks-input" value="{{document.system.armor.system.marks.value}}" type="number">
|
||||
<input class="bar-input armor-marks-input" value="{{document.system.armorScore.value}}" type="number">
|
||||
<span>/</span>
|
||||
<span class="bar-label">{{document.system.armorScore}}</span>
|
||||
<span class="bar-label">{{document.system.armorScore.max}}</span>
|
||||
</div>
|
||||
<progress
|
||||
class='progress-bar stress-color'
|
||||
value='{{document.system.armor.system.marks.value}}'
|
||||
max='{{document.system.armorScore}}'
|
||||
value='{{document.system.armorScore.value}}'
|
||||
max='{{document.system.armorScore.max}}'
|
||||
></progress>
|
||||
<div class="status-label">
|
||||
<a class="status-label" data-action="toggleArmorMangement">
|
||||
<h4>{{localize "DAGGERHEART.GENERAL.armorSlots"}}</h4>
|
||||
</div>
|
||||
<i class="fa-solid fa-gear"></i>
|
||||
</a>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{else}}
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
>
|
||||
|
||||
<div class="actions-section">
|
||||
<button data-action="tagTeamRoll">
|
||||
<button data-action="tagTeamRoll" class="{{#if tagTeamActive}}active-action{{/if}}">
|
||||
<i class="fa-solid fa-user-group"></i>
|
||||
<span>Tag Team Roll</span>
|
||||
</button>
|
||||
|
|
|
|||
|
|
@ -52,13 +52,12 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
{{#if actor.system.armor.system.marks}}
|
||||
{{#if actor.system.armorScore.max}}
|
||||
<div class="slot-section">
|
||||
<div class="slot-bar">
|
||||
{{#times actor.system.armorScore}}
|
||||
<a class='armor-slot'
|
||||
data-action='toggleArmorSlot' data-actor-id="{{actor.uuid}}" data-item-uuid="{{actor.system.armor.uuid}}" data-value="{{add this 1}}">
|
||||
{{#if (gte actor.system.armor.system.marks.value (add this 1))}}
|
||||
{{#times actor.system.armorScore.max}}
|
||||
<a class='armor-slot' data-action='toggleArmorSlot' data-actor-id="{{actor.id}}" data-value="{{add this 1}}">
|
||||
{{#if (gte actor.system.armorScore.value (add this 1))}}
|
||||
<i class="fa-solid fa-shield"></i>
|
||||
{{else}}
|
||||
<i class="fa-solid fa-shield-halved"></i>
|
||||
|
|
@ -68,7 +67,7 @@
|
|||
</div>
|
||||
<div class="slot-label">
|
||||
<span class="label">{{localize "DAGGERHEART.GENERAL.armorSlots"}}</span>
|
||||
<span class="value">{{actor.system.armor.system.marks.value}} / {{actor.system.armorScore}}</span>
|
||||
<span class="value">{{actor.system.armorScore.value}} / {{actor.system.armorScore.max}}</span>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
</h3>
|
||||
<h3>
|
||||
{{localize "DAGGERHEART.ITEMS.Armor.baseScore"}}:
|
||||
{{source.system.baseScore}}
|
||||
{{source.system.armor.max}}
|
||||
<span>-</span>
|
||||
{{localize "DAGGERHEART.ITEMS.Armor.baseThresholds.base"}}:
|
||||
{{source.system.baseThresholds.major}}
|
||||
|
|
|
|||
|
|
@ -6,9 +6,9 @@
|
|||
<fieldset class="two-columns">
|
||||
<legend>{{localize tabs.settings.label}}</legend>
|
||||
<span>{{localize "DAGGERHEART.GENERAL.Tiers.singular"}}</span>
|
||||
{{formField systemFields.tier value=source.system.tier}}
|
||||
{{ formField systemFields.tier value=source.system.tier }}
|
||||
<span>{{localize "DAGGERHEART.ITEMS.Armor.baseScore"}}</span>
|
||||
{{formField systemFields.baseScore value=source.system.baseScore}}
|
||||
{{ formField systemFields.armor.fields.max value=source.system.armor.max }}
|
||||
|
||||
<span>{{localize "TYPES.Item.feature"}}</span>
|
||||
<input type="text" class="features-input" value="{{features}}" />
|
||||
|
|
|
|||
|
|
@ -14,13 +14,13 @@
|
|||
<span>-</span>
|
||||
{{localize (concat 'DAGGERHEART.CONFIG.Range.' source.system.attack.range '.name')}}
|
||||
<span>-</span>
|
||||
{{#if source.system.attack.damage.parts.0.value.custom.enabled}}
|
||||
{{#if source.system.attack.damage.parts.hitPoints.value.custom.enabled}}
|
||||
{{localize "DAGGERHEART.GENERAL.custom"}}
|
||||
{{else}}
|
||||
{{source.system.attack.damage.parts.0.value.dice}}{{#if source.system.attack.damage.parts.0.value.bonus}} + {{source.system.attack.damage.parts.0.value.bonus}}{{/if}}
|
||||
{{source.system.attack.damage.parts.hitPoints.value.dice}}{{#if source.system.attack.damage.parts.hitPoints.value.bonus}} + {{source.system.attack.damage.parts.hitPoints.value.bonus}}{{/if}}
|
||||
{{/if}}
|
||||
(
|
||||
{{#each source.system.attack.damage.parts.0.type}}
|
||||
{{#each source.system.attack.damage.parts.hitPoints.type}}
|
||||
{{localize (concat 'DAGGERHEART.CONFIG.DamageType.' this '.abbreviation')}}
|
||||
{{/each}}
|
||||
)
|
||||
|
|
|
|||
|
|
@ -19,24 +19,24 @@
|
|||
|
||||
<fieldset class="two-columns">
|
||||
{{#with systemFields.attack.fields.damage.fields.parts.element.fields as | fields | }}
|
||||
{{#with (lookup ../document.system.attack.damage.parts 0) as | source | }}
|
||||
{{#with ../document.system.attack.damage.parts.hitPoints as | source | }}
|
||||
<legend>{{localize "DAGGERHEART.GENERAL.damage"}}</legend>
|
||||
<span>{{localize "DAGGERHEART.ACTIONS.Config.general.customFormula"}}</span>
|
||||
{{formInput fields.value.fields.custom.fields.enabled value=source.value.custom.enabled name="system.attack.damage.parts.0.value.custom.enabled"}}
|
||||
{{formInput fields.value.fields.custom.fields.enabled value=source.value.custom.enabled name="system.attack.damage.parts.hitPoints.value.custom.enabled"}}
|
||||
{{#if source.value.custom.enabled}}
|
||||
<span>{{localize "DAGGERHEART.ACTIONS.Config.general.formula"}}</span>
|
||||
{{formInput fields.value.fields.custom.fields.formula value=source.value.custom.formula name="system.attack.damage.parts.0.value.custom.formula"}}
|
||||
{{formInput fields.value.fields.custom.fields.formula value=source.value.custom.formula name="system.attack.damage.parts.hitPoints.value.custom.formula"}}
|
||||
{{else}}
|
||||
<span>{{localize "DAGGERHEART.GENERAL.Dice.single"}}</span>
|
||||
{{formInput fields.value.fields.dice value=source.value.dice name="system.attack.damage.parts.0.value.dice"}}
|
||||
{{formInput fields.value.fields.dice value=source.value.dice name="system.attack.damage.parts.hitPoints.value.dice"}}
|
||||
<span>{{localize "DAGGERHEART.GENERAL.bonus"}}</span>
|
||||
{{formInput fields.value.fields.bonus value=source.value.bonus name="system.attack.damage.parts.0.value.bonus" localize=true}}
|
||||
{{formInput fields.value.fields.bonus value=source.value.bonus name="system.attack.damage.parts.hitPoints.value.bonus" localize=true}}
|
||||
{{/if}}
|
||||
<span>{{localize "DAGGERHEART.GENERAL.type"}}</span>
|
||||
{{formInput fields.type value=source.type name="system.attack.damage.parts.0.type" localize=true}}
|
||||
{{formInput fields.type value=source.type name="system.attack.damage.parts.hitPoints.type" localize=true}}
|
||||
<span>{{localize "DAGGERHEART.CONFIG.DamageType.direct.name"}}</span>
|
||||
{{formInput @root.systemFields.attack.fields.damage.fields.direct value=@root.document.system.attack.damage.direct name="system.attack.damage.direct" localize=true}}
|
||||
<input type="hidden" name="system.attack.damage.parts.0.value.multiplier" value="{{source.value.multiplier}}">
|
||||
<input type="hidden" name="system.attack.damage.parts.hitPoints.value.multiplier" value="{{source.value.multiplier}}">
|
||||
{{/with}}
|
||||
{{/with}}
|
||||
</fieldset>
|
||||
|
|
|
|||
|
|
@ -8,6 +8,9 @@
|
|||
<a {{#if effect.condition}}disabled{{/if}}>
|
||||
<img src="{{effect.img}}" />
|
||||
</a>
|
||||
{{#if (gt effect.system.stacking.value 1)}}
|
||||
<span class="stacking-value">{{effect.system.stacking.value}}</span>
|
||||
{{/if}}
|
||||
{{#if effect.condition}}<i class="effect-locked fa-solid fa-lock"></i>{{/if}}
|
||||
</span>
|
||||
{{/each}}
|
||||
|
|
|
|||
|
|
@ -1,10 +1,40 @@
|
|||
|
||||
|
||||
<nav id="scene-navigation" aria-roledescription="{{localize "SCENE_NAVIGATION.LABEL"}}" data-tooltip-direction="RIGHT">
|
||||
{{#if canExpand}}
|
||||
<a id="scene-navigation-expand" class="ui-control" data-action="toggleExpand">
|
||||
<i class="fa-solid fa-caret-down" inert></i>
|
||||
</a>
|
||||
{{/if}}
|
||||
{{#with scenes.viewed}}
|
||||
<menu id="scene-navigation-viewed" class="scene-navigation-menu flexcol">
|
||||
{{> ".scene" }}
|
||||
</menu>
|
||||
{{/with}}
|
||||
<menu id="scene-navigation-levels" class="scene-levels scene-navigation-menu flexcol levels-{{ scenes.levels.length }}">
|
||||
{{#each scenes.levels}}
|
||||
<li class="level-row">
|
||||
{{#with button}}
|
||||
<button type="button" class="ui-control icon fa-solid {{ css }}" data-action="cycleLevel"
|
||||
data-direction="{{ direction }}" aria-label="{{ label }}"></button>
|
||||
{{/with}}
|
||||
<div class="ui-control scene scene-level {{ css }}" data-scene-id="{{ sceneId }}" data-level-id="{{ id }}" data-action="viewLevel">
|
||||
<span class="ellipsis">{{ name }}</span>
|
||||
</div>
|
||||
</li>
|
||||
{{/each}}
|
||||
</menu>
|
||||
<menu id="scene-navigation-active" class="scene-navigation-menu flexcol">
|
||||
{{#each scenes.active}}
|
||||
{{> ".scene" }}
|
||||
{{/each}}
|
||||
</menu>
|
||||
<menu id="scene-navigation-inactive" class="scene-navigation-menu flexcol">
|
||||
{{#each scenes.inactive as |scene|}}
|
||||
{{> ".scene" }}
|
||||
{{/each}}
|
||||
</menu>
|
||||
{{!-- <menu id="scene-navigation-active" class="scene-navigation-menu flexcol">
|
||||
{{#each scenes.active as |scene|}}
|
||||
<li class="scene-wrapper">
|
||||
<ul>
|
||||
|
|
@ -36,5 +66,25 @@
|
|||
</ul>
|
||||
</li>
|
||||
{{/each}}
|
||||
</menu>
|
||||
</menu> --}}
|
||||
</nav>
|
||||
|
||||
{{#*inline ".scene"}}
|
||||
<li class="scene-wrapper">
|
||||
<div class="ui-control scene {{ cssClass }}" data-scene-id="{{ id }}" data-action="viewScene" {{#if tooltip}}data-tooltip-text="{{ tooltip }}"{{/if}}>
|
||||
<span class="scene-name ellipsis">{{ name }}</span>
|
||||
{{#if users}}
|
||||
<ul class="scene-players">
|
||||
{{#each users}}
|
||||
<li class="scene-player" style="--color-bg: {{ color }}; --color-border: {{ border }}" data-tooltip
|
||||
aria-label="{{ name }}">{{ letter }}</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{#if hasEnvironments}}
|
||||
<button class="ui-control scene-environment {{#if (gt environments.length 1)}}many-environments{{/if}}" data-action="openSceneEnvironment" data-scene-id="{{id}}"><img src="{{environmentImage}}" /> </button>
|
||||
{{/if}}
|
||||
</li>
|
||||
{{/inline}}
|
||||
|
||||
|
|
|
|||
19
templates/ui/tooltip/armorManagement.hbs
Normal file
19
templates/ui/tooltip/armorManagement.hbs
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
<div class="daggerheart armor-management-container">
|
||||
<h3>{{localize "DAGGERHEART.GENERAL.armorSlots"}}</h3>
|
||||
{{#each sources as |source|}}
|
||||
<div class="armor-source-container">
|
||||
<p class="armor-source-label">{{source.name}}</p>
|
||||
<div class="slot-bar">
|
||||
{{#times source.max}}
|
||||
<a class='armor-slot' data-value="{{add this 1}}" data-uuid="{{source.uuid}}">
|
||||
{{#if (gte ../current (add this 1))}}
|
||||
<i class="fa-solid fa-shield" data-index="{{this}}"></i>
|
||||
{{else}}
|
||||
<i class="fa-solid fa-shield-halved" data-index="{{this}}"></i>
|
||||
{{/if}}
|
||||
</a>
|
||||
{{/times}}
|
||||
</div>
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
|
|
@ -16,16 +16,57 @@
|
|||
</div>
|
||||
{{/if}}
|
||||
|
||||
<div class="close-hints">
|
||||
{{#if (eq effect.type 'beastform')}}
|
||||
<p class="close-hint">
|
||||
<i class="fa-solid fa-computer-mouse"></i> {{localize "DAGGERHEART.UI.Tooltip.middleClick"}}
|
||||
</p>
|
||||
{{/if}}
|
||||
{{#unless effect.isLockedCondition}}
|
||||
<p class="close-hint">
|
||||
<i class="fa-solid fa-computer-mouse"></i> {{localize "DAGGERHEART.UI.EffectsDisplay.removeThing" thing=(localize "DAGGERHEART.GENERAL.Effect.single")}}
|
||||
</p>
|
||||
{{/unless}}
|
||||
</div>
|
||||
{{#if effect.system.duration.type}}
|
||||
<div class="duration-container">
|
||||
<div class="duration-inner-container">
|
||||
<span>{{localize "EFFECT.DURATION.Label"}}:</span>
|
||||
<span>{{localize (concat "DAGGERHEART.CONFIG.ActiveEffectDuration." effect.system.duration.type )}}</span>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if effect.system.stacking}}
|
||||
<div class="effect-stacks-outer-container">
|
||||
<div class="effect-stacks-title">{{localize "Stacks"}}</div>
|
||||
<div class="effect-stacks-container">
|
||||
<div class="effect-stacks-inner-container">
|
||||
<span class="effect-stack-title">{{localize "Current"}}</span>
|
||||
<span>{{effect.system.stacking.value}}</span>
|
||||
</div>
|
||||
<div class="effect-stacks-inner-container">
|
||||
<span class="effect-stack-title">{{localize "Max"}}</span>
|
||||
<span>{{effect.system.stacking.max}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
|
||||
<div class="close-hints">
|
||||
{{#if (eq effect.type 'beastform')}}
|
||||
<p class="close-hint">
|
||||
<i class="fa-solid fa-computer-mouse"></i> {{localize "DAGGERHEART.UI.Tooltip.middleClick"}}
|
||||
</p>
|
||||
{{/if}}
|
||||
{{#unless effect.isLockedCondition}}
|
||||
{{#if effect.system.stacking}}
|
||||
<p class="close-hint">
|
||||
<i class="fa-solid fa-computer-mouse"></i> {{localize "DAGGERHEART.UI.EffectsDisplay.increaseStacks"}}
|
||||
</p>
|
||||
{{#if (gt effect.system.stacking.value 1)}}
|
||||
<p class="close-hint">
|
||||
<i class="fa-solid fa-computer-mouse"></i> {{localize "DAGGERHEART.UI.EffectsDisplay.decreaseStacks"}}
|
||||
</p>
|
||||
{{else}}
|
||||
<p class="close-hint">
|
||||
<i class="fa-solid fa-computer-mouse"></i> {{localize "DAGGERHEART.UI.EffectsDisplay.removeThing" thing=(localize "DAGGERHEART.GENERAL.Effect.single")}}
|
||||
</p>
|
||||
{{/if}}
|
||||
{{else}}
|
||||
<p class="close-hint">
|
||||
<i class="fa-solid fa-computer-mouse"></i> {{localize "DAGGERHEART.UI.EffectsDisplay.removeThing" thing=(localize "DAGGERHEART.GENERAL.Effect.single")}}
|
||||
</p>
|
||||
{{/if}}
|
||||
{{/unless}}
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -4,4 +4,12 @@
|
|||
{{#if description}}
|
||||
<div class="tooltip-description">{{{description}}}</div>
|
||||
{{/if}}
|
||||
{{#if item.system.duration.type}}
|
||||
<div class="tooltip-duration">
|
||||
<div class="duration-inner-container">
|
||||
<span>{{localize "EFFECT.DURATION.Label"}}:</span>
|
||||
<span>{{localize (concat "DAGGERHEART.CONFIG.ActiveEffectDuration." item.system.duration.type )}}</span>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
Loading…
Add table
Add a link
Reference in a new issue