Merge branch 'main' into bug/229-Narrative-Countdown-Window

This commit is contained in:
WBHarry 2025-07-02 23:29:18 +02:00
commit 939712f8f8
91 changed files with 3499 additions and 1423 deletions

View file

@ -6,7 +6,7 @@
<div class="wrapper">
<section class="tooltip-part">
<div class="dice">
{{#each roll.dice}}
{{#each roll.dice as | dice index |}}
<header class="part-header flexrow">
<span class="part-formula">{{formula}}</span>
<span class="part-total">{{total}}</span>
@ -17,9 +17,11 @@
<li class="roll die {{../dice}}{{#if discarded}} discarded{{/if}} min">{{result}}</li>
{{/each}}
</ol>
{{#if (eq index 0)}}
<div class="attack-roll-advantage-container">
{{#if (eq ../roll.advantage.type 1)}}{{localize "DAGGERHEART.General.Advantage.Full"}}{{/if}}{{#if (eq ../roll.advantage.type -1)}}{{localize "DAGGERHEART.General.Disadvantage.Full"}}{{/if}}
</div>
{{/if}}
</div>
{{/each}}
</div>

View file

@ -82,6 +82,30 @@
</div>
</div>
{{/if}}
{{#each roll.extra as | extra | }}
<div class="dice">
<header class="part-header flexrow">
<span class="part-formula">
<span>1{{extra.dice}}</span>
</span>
<span class="part-total">{{extra.value}}</span>
</header>
<div class="flexrow">
<ol class="dice-rolls">
<li class="roll die {{extra.dice}}">
<div class="dice-container">
<div class="dice-inner-container">
<div class="dice-wrapper">
<img class="dice" src="../icons/svg/{{extra.dice}}-grey.svg"/>
</div>
<div class="dice-value">{{extra.value}}</div>
</div>
</div>
</li>
</ol>
</div>
</div>
{{/each}}
{{#if roll.modifierTotal}}<div class="duality-modifier">{{#if (gt roll.modifierTotal 0)}}+{{/if}}{{roll.modifierTotal}}</div>{{/if}}
</section>
</div>

View file

@ -0,0 +1,11 @@
<section
class='tab {{tabs.actions.cssClass}} {{tabs.actions.id}}'
data-tab='{{tabs.actions.id}}'
data-group='{{tabs.actions.group}}'
>
<div class="action-section">
{{#if document.system.actions}}
{{> 'systems/daggerheart/templates/sheets/global/partials/inventory-fieldset-items.hbs' title=(localize tabs.actions.label) type='action'}}
{{/if}}
</div>
</section>

View file

@ -0,0 +1,8 @@
<section
class='tab {{tabs.effects.cssClass}} {{tabs.effects.id}}'
data-tab='{{tabs.effects.id}}'
data-group='{{tabs.effects.group}}'
>
{{> 'systems/daggerheart/templates/sheets/global/partials/inventory-fieldset-items.hbs' title=(localize 'DAGGERHEART.Sheets.Global.activeEffects') type='effect'}}
{{> 'systems/daggerheart/templates/sheets/global/partials/inventory-fieldset-items.hbs' title=(localize 'DAGGERHEART.Sheets.Global.inativeEffects') type='effect'}}
</section>

View file

@ -1,9 +1,43 @@
<header class='item-card-header'>
<img class='profile' src='{{source.img}}' data-action='editImage' data-edit='img' />
<div class='item-info'>
<h1 class='item-name'><input type='text' name='name' value='{{source.name}}' /></h1>
<div class='item-description'>
<h3>{{localize 'TYPES.Actor.adversary'}}</h3>
<header class='adversary-header-sheet'>
<line-div></line-div>
<div class="name-row">
<h1 class='actor-name'>
<input type='text' name='name' value='{{source.name}}' placeholder='Actor Name'
/>
</h1>
</div>
<div class="tags">
<div class="tag">
<span>
{{localize (concat 'DAGGERHEART.Tiers.' source.system.tier)}}
</span>
</div>
<div class="tag">
<span>
{{localize (concat 'DAGGERHEART.Adversary.Type.' source.system.type '.label')}}
</span>
</div>
{{#if (eq source.system.type 'horde')}}
<div class="tag">
<span>{{source.system.hordeHp}}</span>
<span>/HP</span>
</div>
{{/if}}
</div>
<line-div></line-div>
<div class="adversary-info">
<div class="description">
<i>{{source.system.description}}</i>
</div>
<div class="motives-and-tatics">
<b>{{localize 'DAGGERHEART.Sheets.Adversary.FIELDS.motivesAndTactics.label'}}: </b>{{{source.system.motivesAndTactics}}}
</div>
</div>
<div class="adversary-navigation">
{{> 'systems/daggerheart/templates/sheets/global/tabs/tab-navigation.hbs'}}
<button data-action="openSettings">
<i class="fa-solid fa-wrench"></i>
</button>
</div>
</header>

View file

@ -1,17 +0,0 @@
<section
class='tab {{tabs.information.cssClass}} {{tabs.information.id}}'
data-tab='{{tabs.information.id}}'
data-group='{{tabs.information.group}}'
>
{{!-- <fieldset>
<legend>{{localize "DAGGERHEART.Sheets.Adversary.FIELDS.description.label" }}</legend>
{{formInput systemFields.description value=source.system.description}}
</fieldset> --}}
<fieldset>
<legend>{{localize "DAGGERHEART.Sheets.Adversary.FIELDS.motivesAndTactics.label" }}</legend>
{{formInput systemFields.motivesAndTactics value=source.system.motivesAndTactics}}
</fieldset>
</section>

View file

@ -1,80 +0,0 @@
<section
class='tab {{tabs.main.cssClass}} {{tabs.main.id}}'
data-tab='{{tabs.main.id}}'
data-group='{{tabs.main.group}}'
>
<div class="adversary-container">
<button data-action="reactionRoll">Reaction Test</button>
<fieldset class="two-columns even">
<legend>{{localize "DAGGERHEART.Sheets.Adversary.General"}}</legend>
{{formGroup systemFields.tier value=source.system.tier localize=true}}
{{formGroup systemFields.type value=source.system.type localize=true}}
<div class="full-width">{{formGroup systemFields.difficulty value=source.system.difficulty}}</div>
<fieldset>
<legend>{{localize "DAGGERHEART.Sheets.Adversary.DamageThresholds"}}</legend>
{{formGroup systemFields.damageThresholds.fields.major value=source.system.damageThresholds.major}}
{{formGroup systemFields.damageThresholds.fields.severe value=source.system.damageThresholds.severe}}
</fieldset>
<fieldset>
<legend>{{localize "DAGGERHEART.Sheets.Adversary.HitPoints"}}</legend>
{{formGroup systemFields.resources.fields.hitPoints.fields.value value=source.system.resources.hitPoints.value}}
{{formGroup systemFields.resources.fields.hitPoints.fields.max value=source.system.resources.hitPoints.max}}
</fieldset>
<fieldset>
<legend>{{localize "DAGGERHEART.Sheets.Adversary.Stress"}}</legend>
{{formGroup systemFields.resources.fields.stress.fields.value value=source.system.resources.stress.value}}
{{formGroup systemFields.resources.fields.stress.fields.max value=source.system.resources.stress.max}}
</fieldset>
<fieldset>
<legend>{{localize "DAGGERHEART.Sheets.Adversary.Experiences"}} <a><i class="fa-solid fa-plus icon-button" data-action="addExperience"></i></a></legend>
{{#each source.system.experiences}}
<fieldset class="one-column">
<legend>{{this.name}} <a><i class="fa-solid fa-trash icon-button" data-action="removeExperience" data-experience="{{@key}}"></i></a></legend>
{{formGroup @root.systemFields.experiences.element.fields.name name=(concat "system.experiences." @key ".name") value=this.name }}
{{formGroup @root.systemFields.experiences.element.fields.value name=(concat "system.experiences." @key ".value") value=this.value }}
</fieldset>
{{/each}}
</fieldset>
</fieldset>
<fieldset class="two-columns even">
<legend>{{localize "DAGGERHEART.Sheets.Adversary.Attack"}}</legend>
<button data-action="attackConfigure">Configure</button>
<button data-action="attackRoll">Attack</button>
<fieldset class="action-category" style="grid-column: 1 / -1;">
<legend class="action-category-label" data-action="toggleSection" data-section="range">
<div>Name</div>
</legend>
<div class="action-category-data open">
{{formGroup systemFields.attack.fields.name value=source.system.attack.name name="system.attack.name"}}
{{formGroup systemFields.attack.fields.img value=source.img label="Icon" name="system.attack.img"}}
</div>
</fieldset>
<div>
<fieldset class="action-category">
<legend class="action-category-label" data-action="toggleSection" data-section="range">
<div>Bonus to Hit</div>
</legend>
<div class="action-category-data open">
{{formField systemFields.attack.fields.roll.fields.bonus value=source.system.attack.roll.bonus name="system.attack.roll.bonus"}}
</div>
</fieldset>
{{> 'systems/daggerheart/templates/views/actionTypes/range-target.hbs' fields=(object range=systemFields.attack.fields.range target=systemFields.attack.fields.target.fields) source=(object target=source.system.attack.target range=source.system.attack.range) path="system.attack."}}
</div>
{{> 'systems/daggerheart/templates/views/actionTypes/damage.hbs' fields=systemFields.attack.fields.damage.fields.parts.element.fields source=source.system.attack.damage path="system.attack."}}
<div style="grid-column: 1 / -1;">
{{> 'systems/daggerheart/templates/views/actionTypes/effect.hbs' fields=systemFields.attack.fields.effects.element.fields source=source.system.attack.effects}}
</div>
</fieldset>
</div>
</section>

View file

@ -0,0 +1,10 @@
<section
class='tab {{tabs.notes.cssClass}} {{tabs.notes.id}}'
data-tab='{{tabs.notes.id}}'
data-group='{{tabs.notes.group}}'
>
<fieldset class="fit-height">
<legend>{{localize tabs.notes.label}}</legend>
{{formInput systemFields.notes value=document.system.notes enriched=document.system.notes localize=true toggled=true}}
</fieldset>
</section>

View file

@ -0,0 +1,111 @@
<aside class="adversary-sidebar-sheet">
<div class="portrait {{#if (gte source.system.resources.hitPoints.value source.system.resources.hitPoints.maxTotal)}}death-roll{{/if}}">
<img src="{{source.img}}" alt="{{source.name}}" data-action='editImage' data-edit="img">
<a class="death-roll-btn" data-tooltip="{{localize "DAGGERHEART.Sheets.PC.Health.DeathMoveTooltip"}}" data-action="makeDeathMove"><i class="fas fa-skull death-save" ></i></a>
</div>
<div class="info-section">
<div class="resources-section">
<div class="status-bar">
<div class='status-value'>
<p><input class="bar-input" name="system.resources.hitPoints.value" value="{{source.system.resources.hitPoints.value}}" type="number"></p>
<p>/</p>
<p class="bar-label">{{source.system.resources.hitPoints.max}}</p>
</div>
<progress
class='progress-bar'
value='{{source.system.resources.hitPoints.value}}'
max='{{source.system.resources.hitPoints.max}}'
></progress>
<div class="status-label">
<h4>HP</h4>
</div>
</div>
<div class="status-bar">
<div class='status-value'>
<p><input class="bar-input" name="system.resources.stress.value" value="{{source.system.resources.stress.value}}" type="number"></p>
<p>/</p>
<p class="bar-label">{{source.system.resources.stress.max}}</p>
</div>
<progress
class='progress-bar stress-color'
value='{{source.system.resources.stress.value}}'
max='{{source.system.resources.stress.max}}'
></progress>
<div class="status-label">
<h4>Stress</h4>
</div>
</div>
</div>
<div class="status-section">
<div class="threshold-section">
<h4 class="threshold-label">{{localize "DAGGERHEART.Sheets.PC.Health.Minor"}}</h4>
<h4 class="threshold-value">{{document.system.damageThresholds.major}}</h4>
<h4 class="threshold-label">{{localize "DAGGERHEART.Sheets.PC.Health.Major"}}</h4>
<h4 class="threshold-value">{{document.system.damageThresholds.severe}}</h4>
<h4 class="threshold-label">{{localize "DAGGERHEART.Sheets.PC.Health.Severe"}}</h4>
</div>
</div>
<div class="status-section">
<div class="status-number">
<div class='status-value armor-slots'>
{{#if source.system.difficulty}}
<p>{{source.system.difficulty}}</p>
{{else}}
<p>-</p>
{{/if}}
</div>
<div class="status-label">
<h4>Difficulty</h4>
</div>
</div>
<div class="status-number">
<div class='status-value armor-slots'>
{{#if source.system.attack.target.amount}}
<p>{{source.system.attack.target.amount}}</p>
{{else}}
<p>-</p>
{{/if}}
</div>
<div class="status-label">
<h4>Attack</h4>
</div>
</div>
</div>
</div>
<div class="attack-section">
<div class="title">
<side-line-div class="invert"></side-line-div>
<h3>Attack</h3>
<side-line-div></side-line-div>
</div>
<ul class="items-sidebar-list">
{{> 'systems/daggerheart/templates/sheets/global/partials/inventory-item.hbs' item=source.system.attack type=source.system.attack.systemPath isSidebar=true}}
</ul>
</div>
<div class="experience-section">
<div class="title">
<side-line-div class="invert"></side-line-div>
<h3>Experience</h3>
<side-line-div></side-line-div>
</div>
<div class="experience-list">
{{#each source.system.experiences as |experience id|}}
<div class="experience-row">
<div class="experience-value">
+{{experience.modifier}}
</div>
<span class="experience-name">{{experience.name}}</span>
<div class="controls">
<a data-action="toChat" data-type="experience" data-uuid="{{id}}"><i class="fa-regular fa-message"></i></a>
</div>
</div>
{{/each}}
</div>
</div>
<line-div></line-div>
<div class="reaction-section">
<button data-action="reactionRoll">Reaction Test</button>
</div>
</aside>

View file

@ -18,7 +18,7 @@
max='{{document.system.resources.hitPoints.maxTotal}}'
></progress>
<div class="status-label">
<h4>Health</h4>
<h4>HP</h4>
</div>
</div>

View file

@ -0,0 +1,9 @@
<section
class='tab {{tabs.actions.cssClass}} {{tabs.actions.id}}'
data-tab='{{tabs.actions.id}}'
data-group='{{tabs.actions.group}}'
>
<div class="action-section">
{{> 'systems/daggerheart/templates/sheets/global/partials/inventory-fieldset-items.hbs' title=(localize tabs.actions.label) type='action'}}
</div>
</section>

View file

@ -1,9 +1,49 @@
<header class='item-card-header'>
<header class='environment-header-sheet'>
<img class='profile' src='{{source.img}}' data-action='editImage' data-edit='img' />
<div class='item-info'>
<h1 class='item-name'><input type='text' name='name' value='{{source.name}}' /></h1>
<div class='item-description'>
<h3>{{localize 'TYPES.Actor.environment'}}</h3>
<div class='item-container'>
<div class="item-info">
<h1 class='item-name'><input type='text' name='name' value='{{source.name}}' /></h1>
<div class="tags">
<div class="tag">
<span>
{{localize (concat 'DAGGERHEART.Tiers.' source.system.tier)}}
</span>
</div>
{{#if source.system.type}}
<div class="tag">
<span>
{{localize (concat 'DAGGERHEART.Environment.Type.' source.system.type '.label')}}
</span>
</div>
{{/if}}
</div>
</div>
<div class="status-number">
<div class='status-value armor-slots'>
{{#if source.system.difficulty}}
<p>{{source.system.difficulty}}</p>
{{else}}
<p>-</p>
{{/if}}
</div>
<div class="status-label">
<h4>Difficulty</h4>
</div>
</div>
</div>
<line-div></line-div>
<div class="environment-info">
<div class="description">
<i>{{source.system.description}}</i>
</div>
<div class="impulses">
<b>{{localize 'DAGGERHEART.Sheets.Environment.FIELDS.impulses.label'}}: </b>{{{source.system.impulses}}}
</div>
</div>
<div class="environment-navigation">
{{> 'systems/daggerheart/templates/sheets/global/tabs/tab-navigation.hbs'}}
<button data-action="openSettings">
<i class="fa-solid fa-wrench"></i>
</button>
</div>
</header>

View file

@ -1,16 +0,0 @@
<section
class='tab {{tabs.information.cssClass}} {{tabs.information.id}}'
data-tab='{{tabs.information.id}}'
data-group='{{tabs.information.group}}'
>
<fieldset>
<legend>{{localize "DAGGERHEART.Sheets.Environment.description"}}</legend>
{{formInput systemFields.description value=source.system.description }}
</fieldset>
<fieldset>
<legend>{{localize "DAGGERHEART.Sheets.Environment.impulses"}}</legend>
{{formInput systemFields.impulses value=source.system.impulses }}
</fieldset>
</section>

View file

@ -1,37 +0,0 @@
<section
class='tab {{tabs.main.cssClass}} {{tabs.main.id}}'
data-tab='{{tabs.main.id}}'
data-group='{{tabs.main.group}}'
>
<fieldset class="two-columns even">
<legend>{{localize "DAGGERHEART.Sheets.Environment.general"}}</legend>
{{formGroup systemFields.tier value=source.system.tier localize=true }}
{{formGroup systemFields.type value=source.system.type localize=true }}
{{formGroup systemFields.difficulty value=source.system.difficulty localize=true }}
</fieldset>
<fieldset class="one-column">
<legend>{{localize "DAGGERHEART.Sheets.Environment.potentialAdversaries.label"}}<a><i class="fa-solid fa-plus icon-button" data-action="addAdversary"></i></a></legend>
{{#each source.system.potentialAdversaries}}
<fieldset class="potential-adversary-container" data-potential-adversary="{{@key}}">
<legend><input name="{{concat "system.potentialAdversaries." id ".label" }}" value="{{this.label}}" /><i class="fa-solid fa-trash" data-action="deleteProperty" data-path="system.potentialAdversaries" id={{@key}}></i></legend>
{{#if (eq (length this.adversaries) 0)}}
<div class="adversary-placeholder">{{localize "DAGGERHEART.Sheets.Environment.potentialAdversaries.placeholder"}}</div>
{{else}}
<div class="adversaries-container">
{{#each this.adversaries as |adversary id|}}
<div class="adversary-container" data-action="viewAdversary" data-potential-adversary="{{@../key}}" data-adversary="{{id}}">{{adversary.name}}</div>
{{/each}}
</div>
{{/if}}
</fieldset>
{{/each}}
</fieldset>
<fieldset class="one-column">
<legend>{{localize "DAGGERHEART.Sheets.Environment.features.label"}}<a><i class="fa-solid fa-plus icon-button" data-action="addFeature"></i></a></legend>
</fieldset>
</section>

View file

@ -0,0 +1,10 @@
<section
class='tab {{tabs.notes.cssClass}} {{tabs.notes.id}}'
data-tab='{{tabs.notes.id}}'
data-group='{{tabs.notes.group}}'
>
<fieldset class="fit-height">
<legend>{{localize tabs.notes.label}}</legend>
{{formInput systemFields.notes value=document.system.notes enriched=document.system.notes localize=true toggled=true}}
</fieldset>
</section>

View file

@ -0,0 +1,11 @@
<section
class='tab {{tabs.potentialAdversaries.cssClass}} {{tabs.potentialAdversaries.id}}'
data-tab='{{tabs.potentialAdversaries.id}}'
data-group='{{tabs.potentialAdversaries.group}}'
>
<div class="action-section">
{{#each document.system.potentialAdversaries}}
{{> 'systems/daggerheart/templates/sheets/global/partials/inventory-fieldset-items.hbs' title=this.label type='adversary' isGlassy=true adversaries=this.adversaries}}
{{/each}}
</div>
</section>

View file

@ -1,238 +0,0 @@
<div>
<header class="adversary-header-container">
<div class="adversary-header flexrow">
<img class="flex0" src="{{document.img}}" data-edit="img" data-action="onEditImage" title="{{document.name}}" height="64" width="64"/>
<div class="adversary-title">
{{#if this.editMode}}
{{formInput fields.name value=source.name rootId=partId placeholder="{{ localize 'Name' }}"}}
{{else}}
<div class="title-text">{{this.title}}</div>
{{/if}}
</div>
</div>
<i class="fa-solid fa-wrench icon-button secondary {{#if this.editMode}}active{{/if}}" data-action="toggleSlider" style="position: absolute; right: 4px; top: 4px;"></i>
</header>
<section class="sheet-body">
{{#if this.editMode}}
<div>
<h2>{{localize "DAGGERHEART.Sheets.Adversary.Description"}}</h2>
<textarea name="system.description">{{source.system.description}}</textarea>
<h2 class="motive-container">
<div class="motive-title">
<div>{{localize "DAGGERHEART.Sheets.Adversary.MotivesAndTactics"}}</div>
<i class="fa-solid fa-plus" data-action="addMotive"></i>
</div>
</h2>
<div class="ability-choices">
{{#each source.system.motivesAndTactics as |motive index|}}
<div class="ability-chip">
<input type="text" name="system.motivesAndTactics.{{index}}" value="{{motive}}" />
<button><i data-action="removeMotive" data-motive="{{index}}" class="fa-solid fa-x"></i></button>
</div>
{{/each}}
</div>
</div>
<div class="adversary-content-container">
<div class="adversary-statistics-container">
<div class="form-group">
<label>{{localize "DAGGERHEART.Sheets.Adversary.Tier"}}</label>
<div class="form-fields">
<select name="system.tier">
{{selectOptions config.GENERAL.tiers selected=source.system.tier labelAttr="key"}}
</select>
</div>
</div>
<div class="form-group">
<label>{{localize "DAGGERHEART.Sheets.Adversary.Type"}}</label>
<div class="form-fields">
<select name="system.type">
{{selectOptions config.ACTOR.adversaryTypes selected=source.system.type labelAttr="name" localize=true}}
</select>
</div>
</div>
<div class="form-group">
<label>{{localize "DAGGERHEART.Sheets.Adversary.Attack.Modifier"}}</label>
<div class="form-fields">
<input type="text" name="system.attackModifier" value="{{source.system.attackModifier}}" data-dtype="Number" />
</div>
</div>
<div class="attack-container">
<h2>{{localize "DAGGERHEART.Sheets.Adversary.Attack.Title"}}</h2>
<div class="form-group">
<label>{{localize "DAGGERHEART.Sheets.Adversary.Attack.Name"}}</label>
<div class="form-fields">
<input type="text" name="system.attack.name" value="{{source.system.attack.name}}" />
</div>
</div>
<div class="form-group">
<label>{{localize "DAGGERHEART.Sheets.Adversary.Attack.Range"}}</label>
<div class="form-fields">
<select name="system.attack.range">
{{selectOptions config.GENERAL.range selected=source.system.attack.range labelAttr="name" localize=true}}
</select>
</div>
</div>
<div class="form-group">
<label>{{localize "DAGGERHEART.Sheets.Adversary.Attack.Damage.Title"}}</label>
<div class="form-fields">
<label>{{localize "DAGGERHEART.Sheets.Adversary.Attack.Damage.Value"}}</label>
<input type="text" name="system.attack.damage.value" value="{{source.system.attack.damage.value}}" />
<label>{{localize "DAGGERHEART.Sheets.Adversary.Attack.Damage.Type"}}</label>
<select name="system.attack.damage.type">
{{selectOptions config.GENERAL.damageTypes selected=source.system.attack.damage.type labelAttr="name" localize=true}}
</select>
</div>
</div>
</div>
<div class="form-group">
<label>{{localize "DAGGERHEART.Sheets.Adversary.Difficulty"}}</label>
<div class="form-fields">
<input type="text" name="system.difficulty" value="{{source.system.difficulty}}" data-dtype="Number" />
</div>
</div>
<div class="form-group">
<label>{{localize "DAGGERHEART.Sheets.Adversary.DamageThresholds.Title"}}</label>
<div class="form-fields adversary-damage-threshold-container">
<label>{{localize "DAGGERHEART.Sheets.Adversary.DamageThresholds.Major"}}</label>
<input type="text" name="system.damageThresholds.major" value="{{source.system.damageThresholds.major}}" data-dtype="Number" />
<label>{{localize "DAGGERHEART.Sheets.Adversary.DamageThresholds.Severe"}}</label>
<input type="text" name="system.damageThresholds.severe" value="{{source.system.damageThresholds.severe}}" data-dtype="Number" />
</div>
</div>
<div class="form-group">
<label>{{localize "DAGGERHEART.Sheets.Adversary.HP"}}</label>
<div class="form-fields">
<input type="text" name="system.resources.hitPoints.max" value="{{source.system.resources.hitPoints.max}}" data-dtype="Number" />
</div>
</div>
<div class="form-group">
<label>{{localize "DAGGERHEART.Sheets.Adversary.Stress"}}</label>
<div class="form-fields">
<input type="text" name="system.resources.stress.max" value="{{source.system.resources.stress.max}}" data-dtype="Number" />
</div>
</div>
<h2 class="experience-container">
<div class="flex-centered">
<div>{{localize "DAGGERHEART.Sheets.Adversary.Experiences"}}</div>
<i class="fa-solid fa-plus" data-action="addExperience"></i>
</div>
</h2>
{{#each source.system.experiences as |experience index|}}
<div class="experience-chip">
<input class="experience.value" type="text" name="system.experiences.{{index}}.name" value="{{experience.name}}" />
<input class="experience-value" type="text" name="system.experiences.{{index}}.value" value="{{experience.value}}" data-dtype="Number" />
<button class="experience-button" data-action="removeExperience" data-experience="{{experience.id}}"><i class="fa-solid fa-x"></i></button>
</div>
{{/each}}
</div>
<div class="adversary-moves-container">
<h2 class="moves-edit-container">{{localize "DAGGERHEART.Sheets.Adversary.Features"}} <i class="fa-solid fa-plus" data-action="addMove"></i></h2>
{{#each this.data.features as |feature key|}}
<div class="chip-container">
<div class="chip-inner-container">
<img src="{{feature.img}}" />
<div class="move-title">{{feature.name}}</div>
</div>
<div class="chip-inner-container">
<button data-action="viewMove" data-move={{feature.uuid}}><i class="fa-solid fa-fw fa-search"></i></button>
<button data-action="removeMove" data-move={{feature.uuid}}><i class="fa-solid fa-trash"></i></button>
</div>
</div>
{{/each}}
</div>
</div>
{{else}}
<div class="motive-container">
<div class="motive-title">
<span class="motive-title-value"><strong>{{localize "DAGGERHEART.Sheets.Adversary.Description"}}:</strong> {{this.data.description}}</span>
</div>
<div class="motive-title">
<span class="motive-title-value"><strong>{{localize "DAGGERHEART.Sheets.Adversary.MotivesAndTactics"}}:</strong> {{this.data.motivesAndTactics}}</span>
</div>
</div>
<div class="adversary-content-container">
<div class="adversary-statistics-container">
<div class="statistic-section">
<div class="statistic-row">
<label class="statistic-title">{{localize "DAGGERHEART.Sheets.Adversary.Tier"}}:</label>
<span class="statistic-value">{{this.data.tier}}</span>
</div>
<div class="statistic-row">
<label class="statistic-title">{{localize "DAGGERHEART.Sheets.Adversary.Type"}}:</label>
<span class="statistic-value">{{this.data.type}}</span>
</div>
</div>
<div class="statistic-section">
<div class="statistic-row">
<label class="statistic-title">{{localize "DAGGERHEART.Sheets.Adversary.Difficulty"}}:</label>
<span class="statistic-value">{{this.data.difficulty}}</span>
</div>
<div class="statistic-row">
<label class="statistic-title">{{localize "DAGGERHEART.Sheets.Adversary.Reaction"}}</label>
<img class="adversary-roll" data-action="reactionRoll" src="icons/svg/d20-grey.svg" />
</div>
<div class="statistic-row">
<label class="statistic-title">{{localize "DAGGERHEART.Sheets.Adversary.Attack.Modifier"}}:</label>
<span class="statistic-value">+{{this.data.attack.attackModifier}}</span>
<img class="adversary-roll" data-action="attackRoll" data-value="{{this.data.attack.attackModifier}}" data-name="{{this.data.attack.name}}" data-damage="{{this.data.attack.damage.value}}" data-damage-type="{{this.data.attack.damage.type}}" src="icons/svg/d20-grey.svg" />
</div>
<div class="statistic-row">
<label class="statistic-title">{{localize this.data.attack.name}}</label>
<span class="statistic-value">{{this.data.attack.range}} | {{this.data.attack.damage.value}} {{this.data.attack.damage.typeName}}</span>
</div>
</div>
<div class="statistic-section">
<div class="statistic-row">
<label class="statistic-title">{{localize "DAGGERHEART.Sheets.PC.Health.Major"}}</label>
<span class="statistic-value">{{this.data.damageThresholds.major}}</span>
<div class="vertical-separator" style="height: 16px; margin: 0 4px;"></div>
<label class="statistic-title">{{localize "DAGGERHEART.Sheets.PC.Health.Severe"}}</label>
<span class="statistic-value">{{this.data.damageThresholds.severe}}</span>
</div>
<div class="statistic-resource-container">
<label class="statistic-title">{{localize "DAGGERHEART.Sheets.Adversary.HP"}}</label>
<div class="statistic-resource-inner-container">
{{#times this.data.hp.max}}
<input class="statistic-resource-input" type="checkbox" data-action="toggleHP" data-index="{{this}}" {{checked (gt ../data.hp.value this)}} />
{{/times}}
</div>
</div>
<div class="statistic-resource-container">
<label class="statistic-title">{{localize "DAGGERHEART.Sheets.Adversary.Stress"}}</label>
<div class="statistic-resource-inner-container">
{{#times this.data.stress.max}}
<input class="statistic-resource-input" type="checkbox" data-action="toggleStress" data-index="{{this}}" {{checked (gt ../data.stress.value this)}} />
{{/times}}
</div>
</div>
</div>
<div class="statistic-section">
<label class="statistic-title">{{localize "DAGGERHEART.Sheets.Adversary.Experience"}}</label>
{{#each source.system.experiences as |experience index|}}
<div class="experience-row">
<span>{{experience.name}}</span>
&nbsp;
<span>{{#if (gte experience.value 0)}}+{{else}}-{{/if}}{{experience.value}}</span>
</div>
{{/each}}
</div>
{{!-- <div class="statistic-resource-container">
<label class="statistic-title">{{localize "HP:"}}</label>
<span class="statistic-value">{{this.data.hp.max}}</span>
</div> --}}
</div>
<div class="adversary-moves-container">
<div class="moves-title">{{localize "DAGGERHEART.Sheets.Adversary.Features"}}</div>
{{#each this.data.features as |feature index|}}
<div class="move-container">
<label class="moves-name">{{feature.name}}</label>
<div class="move-description">{{{feature.system.description}}}</div>
</div>
{{/each}}
</div>
</div>
{{/if}}
</section>
</div>

View file

@ -0,0 +1,34 @@
<section
class='tab {{tabs.actions.cssClass}} {{tabs.actions.id}}'
data-tab='{{tabs.actions.id}}'
data-group='{{tabs.actions.group}}'
>
<button class="add-action-btn" data-action="addAction">
New Action
</button>
<fieldset>
<legend>{{localize tabs.actions.label}}</legend>
<ul class="action-list">
{{#each document.system.actions as |action index|}}
<li class="action-item">
<img src="{{action.img}}" alt="">
<div class="label">
<span>{{action.name}}</span>
<div class="tags">
<div class="tag">
{{localize (concat 'DAGGERHEART.Actions.Types.' action.type '.name')}}
</div>
<div class="tag">
{{localize (concat 'DAGGERHEART.ActionType.' action.actionType)}}
</div>
</div>
</div>
<div class="controls">
<a data-action="editAction" data-index="{{index}}" data-tooltip="{{localize 'DAGGERHEART.Tooltip.edit'}}"><i class="fa-solid fa-pen-to-square"></i></a>
<a data-action="removeAction" data-index="{{index}}" data-tooltip="{{localize 'DAGGERHEART.Tooltip.delete'}}"><i class="fa-solid fa-trash"></i></a>
</div>
</li>
{{/each}}
</ul>
</fieldset>
</section>

View file

@ -0,0 +1,23 @@
<section
class="tab {{tabs.attack.cssClass}} {{tabs.attack.id}}"
data-tab="{{tabs.attack.id}}"
data-group="{{tabs.attack.group}}"
>
<fieldset class="one-column">
<legend>{{localize "DAGGERHEART.General.basics"}}</legend>
{{formGroup systemFields.attack.fields.img value=document.system.attack.img label="Image Path" name="system.attack.img"}}
{{formGroup systemFields.attack.fields.name value=document.system.attack.name label="Attack Name" name="system.attack.name"}}
</fieldset>
<fieldset class="flex">
<legend>{{localize "DAGGERHEART.Sheets.Adversary.Attack"}}</legend>
{{formField systemFields.attack.fields.roll.fields.bonus value=document.system.attack.roll.bonus label="Attack Bonus" name="system.attack.roll.bonus"}}
{{formField systemFields.attack.fields.range value=document.system.attack.range label="Range" name="system.attack.range" localize=true}}
{{#if systemFields.attack.fields.target.fields}}
{{ formField systemFields.attack.fields.target.fields.type value=document.system.attack.target.type label="Target" name="system.attack.target.type" localize=true }}
{{#if (and document.system.attack.target.type (not (eq document.system.attack.target.type 'self')))}}
{{ formField systemFields.attack.fields.target.fields.amount value=document.system.attack.target.amount label="Amount" name="system.attack.target.amount" }}
{{/if}}
{{/if}}
</fieldset>
{{> 'systems/daggerheart/templates/views/actionTypes/damage.hbs' fields=systemFields.attack.fields.damage.fields.parts.element.fields source=document.system.attack.damage path="system.attack."}}
</section>

View file

@ -0,0 +1,38 @@
<section
class='tab {{tabs.details.cssClass}} {{tabs.details.id}}'
data-tab='{{tabs.details.id}}'
data-group='{{tabs.details.group}}'
>
<fieldset class="one-column">
<legend>{{localize 'DAGGERHEART.General.basics'}}</legend>
<div class="nest-inputs">
{{formGroup systemFields.tier value=document.system.tier localize=true}}
{{formGroup systemFields.type value=document.system.type localize=true}}
{{#if (eq document.system.type 'horde')}}
{{formGroup systemFields.hordeHp value=document.system.hordeHp label=(localize "DAGGERHEART.Sheets.Adversary.horderHp")}}
{{/if}}
{{formGroup systemFields.difficulty value=document.system.difficulty localize=true}}
</div>
{{formField systemFields.description value=document.system.description label=(localize "DAGGERHEART.Sheets.Adversary.FIELDS.description.label")}}
{{formField systemFields.motivesAndTactics value=document.system.motivesAndTactics label=(localize "DAGGERHEART.Sheets.Adversary.FIELDS.motivesAndTactics.label")}}
</fieldset>
<div class="fieldsets-section">
<fieldset class="flex">
<legend>{{localize "DAGGERHEART.Sheets.Adversary.HitPoints"}}</legend>
{{formGroup systemFields.resources.fields.hitPoints.fields.value value=document.system.resources.hitPoints.value}}
{{formGroup systemFields.resources.fields.hitPoints.fields.max value=document.system.resources.hitPoints.max}}
</fieldset>
<fieldset class="flex">
<legend>{{localize "DAGGERHEART.Sheets.Adversary.Stress"}}</legend>
{{formGroup systemFields.resources.fields.stress.fields.value value=document.system.resources.stress.value}}
{{formGroup systemFields.resources.fields.stress.fields.max value=document.system.resources.stress.max}}
</fieldset>
</div>
<fieldset class="flex">
<legend>{{localize "DAGGERHEART.Sheets.Adversary.DamageThresholds"}}</legend>
{{formGroup systemFields.damageThresholds.fields.major value=document.system.damageThresholds.major}}
{{formGroup systemFields.damageThresholds.fields.severe value=document.system.damageThresholds.severe}}
</fieldset>
</section>

View file

@ -0,0 +1,23 @@
<section
class='tab {{tabs.experiences.cssClass}} {{tabs.experiences.id}}'
data-tab='{{tabs.experiences.id}}'
data-group='{{tabs.experiences.group}}'
>
<button class="add-experience-btn" type="button" data-action="addExperience">
<span>New Experience</span>
</button>
<fieldset>
<legend>{{localize tabs.experiences.label}}</legend>
<ul class="experience-list">
{{#each document.system.experiences as |experience key|}}
<li class="experience-item">
<input class="name" type="text" name="system.experiences.{{key}}.name" value="{{experience.name}}" />
<input class="modifier" type="text" name="system.experiences.{{key}}.modifier" value="{{experience.modifier}}" data-dtype="Number" />
<a data-action="removeExperience" data-experience="{{key}}" data-tooltip="{{localize 'DAGGERHEART.Tooltip.delete'}}"><i class="fa-solid fa-trash"></i></a>
</li>
{{/each}}
</ul>
</fieldset>
</section>

View file

@ -0,0 +1,3 @@
<header class="dialog-header">
<h1>{{document.name}}</h1>
</header>

View file

@ -0,0 +1,34 @@
<section
class='tab {{tabs.actions.cssClass}} {{tabs.actions.id}}'
data-tab='{{tabs.actions.id}}'
data-group='{{tabs.actions.group}}'
>
<button class="add-action-btn" data-action="addAction">
New Action
</button>
<fieldset>
<legend>{{localize tabs.actions.label}}</legend>
<ul class="action-list">
{{#each document.system.actions as |action index|}}
<li class="action-item">
<img src="{{action.img}}" alt="">
<div class="label">
<span>{{action.name}}</span>
<div class="tags">
<div class="tag">
{{localize (concat 'DAGGERHEART.Actions.Types.' action.type '.name')}}
</div>
<div class="tag">
{{localize (concat 'DAGGERHEART.ActionType.' action.actionType)}}
</div>
</div>
</div>
<div class="controls">
<a data-action="editAction" data-index="{{index}}" data-tooltip="{{localize 'DAGGERHEART.Tooltip.edit'}}"><i class="fa-solid fa-pen-to-square"></i></a>
<a data-action="removeAction" data-index="{{index}}" data-tooltip="{{localize 'DAGGERHEART.Tooltip.delete'}}"><i class="fa-solid fa-trash"></i></a>
</div>
</li>
{{/each}}
</ul>
</fieldset>
</section>

View file

@ -0,0 +1,28 @@
<section
class='tab {{tabs.adversaries.cssClass}} {{tabs.adversaries.id}}'
data-tab='{{tabs.adversaries.id}}'
data-group='{{tabs.adversaries.group}}'
>
<button class="add-action-btn" data-action="addCategory">
New Category
</button>
{{#each document.system.potentialAdversaries}}
<fieldset class="category-container" data-potential-adversary="{{@key}}">
<legend>{{this.label}}</legend>
<div class="category-name">
<input type="text" name="{{concat "system.potentialAdversaries." @key ".label" }}" value="{{this.label}}" />
<a><i class="fa-solid fa-trash" data-action="deleteProperty" data-path="system.potentialAdversaries" id={{@key}} data-tooltip='{{localize "DAGGERHEART.Tooltip.delete"}}'></i></a>
</div>
<div class="adversaries-container">
{{#each this.adversaries as |adversary|}}
<div class="adversary-container">
{{> 'systems/daggerheart/templates/sheets/global/partials/inventory-item.hbs' item=adversary type='adversary' isActor=true categoryAdversary=@../key}}
</div>
{{/each}}
</div>
<div class="adversaries-dragger">
Drop Actors here
</div>
</fieldset>
{{/each}}
</section>

View file

@ -0,0 +1,16 @@
<section
class='tab {{tabs.details.cssClass}} {{tabs.details.id}}'
data-tab='{{tabs.details.id}}'
data-group='{{tabs.details.group}}'
>
<fieldset class="one-column">
<legend>{{localize 'DAGGERHEART.General.basics'}}</legend>
<div class="nest-inputs">
{{formGroup systemFields.tier value=document.system.tier localize=true}}
{{formGroup systemFields.type value=document.system.type localize=true}}
{{formGroup systemFields.difficulty value=document.system.difficulty localize=true}}
</div>
{{formField systemFields.description value=document.system.description label=(localize "DAGGERHEART.Sheets.Environment.FIELDS.description.label")}}
{{formField systemFields.impulses value=document.system.impulses label=(localize "DAGGERHEART.Sheets.Environment.FIELDS.impulses.label")}}
</fieldset>
</section>

View file

@ -0,0 +1,3 @@
<header class="dialog-header">
<h1>{{document.name}}</h1>
</header>

View file

@ -1,151 +0,0 @@
<div class="old-sheet">
<header>
<div class="pc-sheet-header">
<div class="class-info">
<div class="flexrow">
{{#if document.system.class.value}}
<div class="flexcol">
<h2 class="class-title flex0" data-action="viewObject" data-value="{{document.system.class.value.uuid}}" data-tab="guide">
<img class="domain-image" src="{{domains.first}}" />
<span>{{document.system.class.value.name}}</span>
<img class="domain-image" src="{{domains.second}}" />
</h2>
<span class="domain-title flex0">
<span>{{document.system.class.value.system.domains.[0]}}</span>
<span>and</span>
<span>{{document.system.class.value.system.domains.[1]}}</span>
</div>
{{else}}
<div class="flexcol">
<h2 class="class-add-container class-title">Class <button data-action="selectClass"><i class="fa-solid fa-plus"></i></button></h2>
</div>
{{/if}}
</div>
</div>
<div class="general-info">
<div class="flexrow">
<div class="flexcol">
<div class="flexrow">
<div class="flexrow">
<div class="general-input">
<span class="general-title">{{localize "DAGGERHEART.Sheets.PC.Name"}}</span>
<input name="name" value="{{document.name}}" type="text" style="padding-left: 50px;" />
</div>
<div class="general-input">
<span class="general-title">{{localize "DAGGERHEART.Sheets.PC.Pronouns"}}</span>
<input name="system.pronouns" value="{{document.system.pronouns}}" type="text" style="padding-left: 84px;" />
</div>
<div class="rest-container">
<button data-action="takeShortRest" title="{{localize "DAGGERHEART.Sheets.PC.ShortRest"}}"><i class="fa-solid fa-chair"></i></button>
<button data-action="takeLongRest" title="{{localize "DAGGERHEART.Sheets.PC.LongRest"}}"><i class="fa-solid fa-bed"></i></button>
</div>
</div>
<div class="level-container {{#if document.system.levelData.canLevelUp}}levelup{{/if}}" style="width: 30px; height: 30px;">
<div class="level-value-container">
<input class="level-value {{#if document.system.levelData.canLevelUp}}levelup{{/if}}" value="{{document.system.levelData.level.changed}}" type="text" data-dtype="Number" />
{{#if document.system.levelData.canLevelUp}}<div class="levelup-marker">*</div>{{/if}}
</div>
<img style="width: 30px; height: 30px;" src="systems/daggerheart/assets/AttributeShield.svg" />
<div data-action="levelup" class="level-title {{#if document.system.levelData.canLevelUp}}levelup{{/if}}">{{localize "DAGGERHEART.Sheets.PC.Level"}}</div>
</div>
</div>
<div class="flexrow">
{{#objectSelector title="Heritage" ids=(join document.system.community.uuid document.system.ancestry.uuid) values=(join document.system.community.name document.system.ancestry.name) titleFontSize=14 style="min-width: 272px;"}}
<button data-action="selectCommunity" class="option-select deeper"><i class="fa-solid fa-house-chimney"></i></button>
<button data-action="selectAncestry" class="option-select"><i class="fa-solid fa-user-large"></i></button>
{{/objectSelector}}
{{#objectSelector title="Subclass" ids=(join document.system.class.subclass.uuid) values=(join document.system.class.subclass.name) titleFontSize=14}}
<button data-action="selectSubclass" class="option-select" {{#if (not ../document.system.class.value)}}disabled{{/if}}><i class="fa-solid fa-fw fa-search"></i></button>
{{/objectSelector}}
</div>
</div>
</div>
<nav class="sheet-tabs tabs">
{{#each tabs.primary as |tab|}}
<a class="{{tab.cssClass}}" data-action="tab" data-group="{{tab.group}}" data-tab="{{tab.id}}">
<i class="{{tab.icon}}"></i>
<label>{{localize tab.label}}</label>
</a>
{{/each}}
</nav>
</div>
</div>
</header>
<section class="sheet-body flexcol">
<div class="tab features {{this.tabs.primary.features.cssClass}}" data-group="primary" data-tab="features">
<div class="tab-container">
<div class="flexcol tab-inner-container">
<div class="feature-sheet-body flexrow">
<div class="body-section flex2">
{{> "systems/daggerheart/templates/sheets/parts/defense.hbs" }}
{{> "systems/daggerheart/templates/sheets/parts/health.hbs" }}
{{> "systems/daggerheart/templates/sheets/parts/hope.hbs" }}
{{> "systems/daggerheart/templates/sheets/parts/gold.hbs" }}
{{> "systems/daggerheart/templates/sheets/parts/features.hbs" }}
</div>
<div class="body-section flex3">
{{> "systems/daggerheart/templates/sheets/parts/attributes.hbs" }}
{{> "systems/daggerheart/templates/sheets/parts/weapons.hbs" primaryWeapon=document.system.primaryWeapon secondaryWeapon=document.system.secondaryWeapon weaponBurden=document.system.getWeaponBurden proficiency=document.system.proficiency }}
{{> "systems/daggerheart/templates/sheets/parts/armor.hbs" armor=document.system.armor }}
</div>
</div>
</div>
</div>
</div>
<div class="tab domain-card-tab {{this.tabs.primary.loadout.cssClass}}" data-group="primary" data-tab="loadout">
{{> "systems/daggerheart/templates/sheets/character/sections/loadout.hbs" abilities=this.abilities actor=this.document config=this.config }}
</div>
<div class="tab {{this.tabs.primary.inventory.cssClass}}" data-group="primary" data-tab="inventory">
{{> "systems/daggerheart/templates/sheets/character/sections/inventory.hbs" inventory=this.inventory }}
</div>
<div class="tab {{this.tabs.primary.story.cssClass}}" data-group="primary" data-tab="story">
<div class="flexcol" style="height: 100%;">
<div class="story-container flexrow">
<fieldset class="story-fieldset">
<legend class="story-legend">{{localize "DAGGERHEART.Sheets.PC.Story.BackgroundTitle"}}</legend>
{{editor document.system.story.background target="system.story.background" button=true }}
</fieldset>
<fieldset class="story-fieldset">
<legend class="story-legend">{{localize "DAGGERHEART.Sheets.PC.Story.AppearanceTitle"}}</legend>
{{editor document.system.story.appearance target="system.story.appearance" button=true }}
</fieldset>
</div>
<div class="story-container flexrow">
<fieldset class="story-fieldset">
<legend class="story-legend">{{localize "DAGGERHEART.Sheets.PC.Story.ConnectionsTitle"}}</legend>
{{editor document.system.story.connections target="system.story.connections" button=true }}
</fieldset>
<fieldset class="story-fieldset scars-container">
<legend class="story-legend">
{{localize "DAGGERHEART.Sheets.PC.Story.Scars.Title"}}
<i data-action="addScar" class="fa-solid fa-plus icon-button {{#if (eq document.system.story.scars.length 5)}}disabled{{/if}}"></i>
</legend>
<div class="ability-choices">
{{#each document.system.story.scars as |scar index|}}
<div class="ability-chip {{#if (eq key ../selectedScar)}}selected{{/if}}" data-action="selectScar" data-value="{{index}}">
<input type="text" name="system.story.scars.{{index}}.name" value="{{scar.name}}" />
<button><i data-action="deleteScar" data-scar="{{index}}" class="fa-solid fa-x"></i></button>
</div>
{{/each}}
</div>
{{#with (lookup document.system.story.scars this.selectedScar)}}
{{#if this}}
<div class="editor-form-group">
<label>{{this.name}} - {{localize "Description"}}</label>
{{editor this.description target=(concat "system.story.scars." ../selectedScar ".description") button=true}}
</div>
{{/if}}
{{/with}}
</fieldset>
</div>
</div>
</div>
</section>
<footer>
</footer>
</div>

View file

@ -1,27 +0,0 @@
<div class="abilities-card">
<div class="abilities-card-image-container">
<img class="abilities-card-image" src="{{card.img}}" />
<div class="abilities-card-level">
{{#each card.domains}}
<img src="{{this}}" />
{{/each}}
</div>
<div class="abilities-card-type">
<div class="abilities-card-type-text">{{card.className}}</div>
</div>
</div>
<div class="abilities-text-container">
<div class="abilities-card-title">{{card.subclassName}}</div>
<div class="abilities-card-sub-title">{{card.subtitle}}</div>
{{#if card.spellcast}}<div class="abilities-card-spellcast"><span class="title">Spellcast: </span>&nbsp;<span>{{localize card.spellcast}}</span></div>{{/if}}
<div class="abilities-card-description abilities-card-effect" data-action="useAdvancementCard" data-multiclass="{{card.multiclass}}" data-key="{{card.type}}">{{{card.description}}}</div>
<div class="abilities-card-abilities">
{{#each card.abilities as |ability key|}}
<div class="abilities-card-ability" data-action="useAdvancementAbility" data-id="{{ability.uuid}}" data-key="{{key}}">
<span class="abilities-text"><strong>{{ability.name}}</strong></span>
{{{ability.system.description}}}
</div>
{{/each}}
</div>
</div>
</div>

View file

@ -1,18 +0,0 @@
<div class="abilities-card">
<div class="abilities-card-image-container">
<img class="abilities-card-image" src="{{card.img}}" />
<div class="abilities-card-type"><div class="abilities-card-type-text">{{card.system.type}}</div></div>
</div>
<div class="abilities-text-container">
<div class="abilities-card-title">{{card.name}}</div>
<div class="abilities-card-description">{{{card.system.description}}}</div>
<div class="abilities-card-abilities">
{{#each card.system.abilities as |ability key|}}
<div class="abilities-card-ability" data-action="useAbility" data-feature="{{ability.uuid}}" data-type="{{ability.system.type}}">
<span class="abilities-text"><strong>{{ability.name}}</strong></span>
{{{ability.system.description}}}
</div>
{{/each}}
</div>
</div>
</div>

View file

@ -1,35 +0,0 @@
<div class="inventory-container">
{{#each this.inventory as |section key|}}
<ol class="inventory-item-list inventory-item-header">
<li class="item inventory-title-row-container">
<div class="inventory-title-row">
<div class="inventory-item-title-container">{{section.titles.name}}</div>
<div class="inventory-item-quantity title">{{section.titles.quantity}}</div>
</div>
</li>
</ol>
<ol class="item-list inventory-item-list">
{{#each this.items as |item|}}
<li class="item inventory-item">
<div class="inventory-row" data-item-id="{{item.uuid}}">
<div class="inventory-item-title-container">
<div data-action="useItem" data-value="{{item.uuid}}" class="inventory-item-title">
<img src="{{item.img}}" />
{{item.name}}
</div>
</div>
<div class="flexrow">
<button data-action="toggleEquipItem" id="{{item.id}}">{{localize "Equip"}}</button>
</div>
<div class="inventory-item-quantity spaced">
<i data-action="itemQuantityDecrease" class="fa-solid fa-chevron-left icon-button {{#if (lte item.system.quantity 1)}}disabled{{/if}}"></i>
<input type="text" data-item="system.quantity" value="{{item.system.quantity}}" data-dtype="Number" />
<i data-action="itemQuantityIncrease" class="fa-solid fa-chevron-right icon-button"></i>
</div>
<i data-action="deleteItem" class="fas fa-trash icon-button secondary row-icon"></i>
</div>
</li>
{{/each}}
</ol>
{{/each}}
</div>

View file

@ -1,137 +0,0 @@
<div class="domain-card-body">
<nav class="sheet-tabs tabs">
{{#each tabs.secondary as |tab|}}
<a class="item {{tab.cssClass}}" data-action="tab" data-group="{{tab.group}}" data-tab="{{tab.id}}">
<i class="{{tab.icon}}"></i>
<label>{{localize tab.label}}</label>
</a>
{{/each}}
</nav>
<section class="loadout-body flexcol">
<div class="tab" data-group="secondary" data-tab="foundation">
<div class="heritage-container">
<div class="card-row">
<div class="heritage-card {{#if (not abilities.foundation.ancestry)}}outlined{{/if}}">
{{#if abilities.foundation.ancestry}}
{{> "systems/daggerheart/templates/sheets/character/parts/heritageCard.hbs" card=abilities.foundation.ancestry }}
{{else}}
<div class="empty-ability-container">
<div class="empty-ability-inner-container">
<div>{{localize "DAGGERHEART.Sheets.PC.Heritage.EmptyAncestry"}}</div>
<div>{{localize "DAGGERHEART.Sheets.PC.Heritage.EmptyAncestryTip"}}</div>
</div>
<div class="empty-ability-inner-container"></div>
</div>
{{/if}}
</div>
<div class="heritage-card {{#if (not abilities.foundation.community)}}outlined{{/if}}">
{{#if abilities.foundation.community}}
{{> "systems/daggerheart/templates/sheets/character/parts/heritageCard.hbs" card=abilities.foundation.community }}
{{else}}
<div class="empty-ability-container">
<div class="empty-ability-inner-container">
<div>{{localize "DAGGERHEART.Sheets.PC.Heritage.EmptyCommunity"}}</div>
<div>{{localize "DAGGERHEART.Sheets.PC.Heritage.EmptyCommunityTip"}}</div>
</div>
<div class="empty-ability-inner-container"></div>
</div>
{{/if}}
</div>
</div>
<div class="card-row">
<div class="heritage-card {{#if (not abilities.foundation.advancement.foundation)}}outlined{{/if}}">
{{#if abilities.foundation.advancement.foundation}}
{{> "systems/daggerheart/templates/sheets/character/parts/advancementCard.hbs" card=abilities.foundation.advancement.foundation }}
{{else}}
<div class="empty-ability-container">
<div class="empty-ability-inner-container">
<div>{{localize "DAGGERHEART.Sheets.PC.Heritage.SubclassFoundation"}}</div>
<div>{{localize "DAGGERHEART.Sheets.PC.Heritage.SubclassFoundationTip"}}</div>
</div>
<div class="empty-ability-inner-container"></div>
</div>
{{/if}}
</div>
<div class="heritage-card {{#if (not abilities.foundation.advancement.first)}}outlined{{/if}}">
{{#if abilities.foundation.advancement.first}}
{{> "systems/daggerheart/templates/sheets/character/parts/advancementCard.hbs" card=abilities.foundation.advancement.first }}
{{else}}
<div class="empty-ability-container">
<div class="empty-ability-inner-container">
<div>{{localize "DAGGERHEART.Sheets.PC.Heritage.Subclass"}}</div>
<div>{{localize "DAGGERHEART.General.Or"}}</div>
<div>{{localize "DAGGERHEART.Sheets.PC.Heritage.Multiclass"}}</div>
</div>
<div class="empty-ability-inner-container"><i class="fa-solid fa-lock"></i></div>
</div>
{{/if}}
</div>
<div class="heritage-card {{#if (not abilities.foundation.advancement.second)}}outlined{{/if}}">
{{#if abilities.foundation.advancement.second}}
{{> "systems/daggerheart/templates/sheets/character/parts/advancementCard.hbs" card=abilities.foundation.advancement.second}}
{{else}}
<div class="empty-ability-container">
<div class="empty-ability-inner-container">
<div>{{localize "DAGGERHEART.Sheets.PC.Heritage.Subclass"}}</div>
<div>{{localize "DAGGERHEART.General.Or"}}</div>
<div>{{localize "DAGGERHEART.Sheets.PC.Heritage.Multiclass"}}</div>
</div>
<div class="empty-ability-inner-container"><i class="fa-solid fa-lock"></i></div>
</div>
{{/if}}
</div>
</div>
</div>
</div>
<div class="tab" data-group="secondary" data-tab="loadout">
<div class="loadout-container">
<div class="top-card-row">
{{#times 2}}
<div class="domain-card {{#if (not (lookup ../abilities.loadout.top this))}}outlined{{/if}}">
{{#with (lookup ../abilities.loadout.top this)}}
{{> "systems/daggerheart/templates/sheets/parts/domainCard.hbs" card=this inVault=false }}
{{/with}}
{{#if (not (lookup ../abilities.loadout.top this))}}
<div class="empty-ability-container">
<div class="empty-ability-inner-container">{{localize "DAGGERHEART.Sheets.PC.DomainCard.AvailableDomainSlot"}}</div>
<div class="empty-ability-inner-container"></div>
</div>
{{/if}}
</div>
{{/times}}
</div>
<div class="card-row">
{{#times 3}}
<div class="domain-card {{#if (not (lookup ../abilities.loadout.bottom this))}}outlined{{/if}}">
{{#with (lookup ../abilities.loadout.bottom this)}}
{{> "systems/daggerheart/templates/sheets/parts/domainCard.hbs" card=this inVault=false }}
{{/with}}
{{#if (gt (add this 3) ../actor/system/domainData.maxLoadout)}}
<div class="empty-ability-container">
<div class="empty-ability-inner-container">{{localize "DAGGERHEART.Sheets.PC.DomainCard.UnavailableDomainSlot" level=(add this 2)}}</div>
<div class="empty-ability-inner-container"><i class="fa-solid fa-lock"></i></div>
</div>
{{/if}}
{{#if (and (lte (add this 3) ../actor/system/domainData.maxLoadout) (lt ../abilities.loadout.bottom.length (add this 1)))}}
<div class="empty-ability-container">
<div class="empty-ability-inner-container">{{localize "DAGGERHEART.Sheets.PC.DomainCard.AvailableDomainSlot"}}</div>
<div class="empty-ability-inner-container"></div>
</div>
{{/if}}
</div>
{{/times}}
</div>
</div>
</div>
<div class="tab" data-group="secondary" data-tab="vault">
<div class="vault-container">
{{#each abilities.vault}}
<div class="vault-card">
{{> "systems/daggerheart/templates/sheets/parts/domainCard.hbs" card=this inVault=true }}
</div>
{{/each}}
</div>
</div>
</section>
</div>

View file

@ -1,111 +0,0 @@
<div>
<header class="adversary-header-container">
<div class="adversary-header flexrow">
<img class="flex0" src="{{source.img}}" data-action="onEditImage" data-edit="img" title="{{source.name}}" height="64" width="64"/>
<div class="adversary-title">
{{#if this.editMode}}
<input class="title-text" name="name" type="text" value="{{source.name}}" placeholder="{{ localize 'Name' }}"/>
{{else}}
<div class="title-text">{{source.name}}</div>
{{/if}}
</div>
</div>
<i class="fa-solid fa-wrench icon-button secondary {{#if this.editMode}}active{{/if}}" data-action="toggleSlider" style="position: absolute; right: 4px; top: 4px;"></i>
</header>
<section class="sheet-body">
{{#if this.editMode}}
<div>
<h2>{{localize "DAGGERHEART.Sheets.Adversary.Description"}}</h2>
<textarea name="system.description">{{source.system.description}}</textarea>
<h2>{{localize "DAGGERHEART.Sheets.Environment.ToneAndFeel"}}</h2>
<textarea name="system.toneAndFeel">{{source.system.toneAndFeel}}</textarea>
</div>
<div class="flexrow" style="align-items: baseline;">
<div class="adversary-statistics-container">
<div class="form-group">
<label>{{localize "DAGGERHEART.Sheets.Adversary.Tier"}}</label>
<div class="form-fields">
<select name="system.tier">
{{selectOptions config.GENERAL.tiers selected=source.system.tier labelAttr="key"}}
</select>
</div>
</div>
<div class="form-group">
<label>{{localize "DAGGERHEART.Sheets.Adversary.Type"}}</label>
<div class="form-fields">
<select name="system.type">
{{selectOptions config.ACTOR.adversaryTypes selected=source.system.type labelAttr="name" localize=true}}
</select>
</div>
</div>
<div class="form-group">
<label>{{localize "DAGGERHEART.Sheets.Adversary.Difficulty"}}</label>
<div class="form-fields">
<input type="text" name="system.difficulty" value="{{source.system.difficulty}}" data-dtype="Number" />
</div>
</div>
<h2>{{localize "DAGGERHEART.Sheets.Environment.PotentialAdversaries"}}</h2>
<textarea name="system.potentialAdversaries">{{source.system.potentialAdversaries}}</textarea>
</div>
<div class="adversary-moves-container">
<h2 class="moves-edit-container">{{localize "DAGGERHEART.Sheets.Adversary.Features"}} <i class="fa-solid fa-plus" data-action="addFeature"></i></h2>
{{#each data.features as |feature key|}}
<div class="chip-container">
<div class="chip-inner-container">
<img src="{{feature.img}}" />
<div class="move-title">{{feature.name}}</div>
</div>
<div class="chip-inner-container">
<button data-action="viewFeature" data-feature={{feature.uuid}}><i class="fa-solid fa-fw fa-search"></i></button>
<button data-action="removeFeature" data-feature={{feature.uuid}}><i class="fa-solid fa-trash"></i></button>
</div>
</div>
{{/each}}
</div>
</div>
{{else}}
<div class="motive-container">
<div class="motive-title">
<span class="motive-title-value"><strong>{{localize "DAGGERHEART.Sheets.Adversary.Description"}}:</strong> {{source.system.description}}</span>
</div>
<div class="motive-title">
<span class="motive-title-value"><strong>{{localize "DAGGERHEART.Sheets.Environment.ToneAndFeel"}}:</strong> {{source.system.toneAndFeel}}</span>
</div>
</div>
<div class="flexrow" style="align-items: baseline;">
<div class="adversary-statistics-container">
<div class="statistic-section">
<div class="statistic-row">
<label class="statistic-title">{{localize "DAGGERHEART.Sheets.Adversary.Tier"}}:</label>
<span class="statistic-value">{{source.system.tier}}</span>
</div>
<div class="statistic-row">
<label class="statistic-title">{{localize "DAGGERHEART.Sheets.Adversary.Type"}}:</label>
<span class="statistic-value">{{this.data.type}}</span>
</div>
</div>
<div class="statistic-section">
<div class="statistic-row">
<label class="statistic-title">{{localize "DAGGERHEART.Sheets.Adversary.Difficulty"}}:</label>
<span class="statistic-value">{{source.system.difficulty}}</span>
</div>
</div>
<div class="statistic-section">
<label class="statistic-title">{{localize "DAGGERHEART.Sheets.Environment.PotentialAdversaries"}}:</label>
<span>{{source.system.potentialAdversaries}}</span>
</div>
</div>
<div class="adversary-moves-container">
<div class="moves-title">{{localize "DAGGERHEART.Sheets.Adversary.Features"}}</div>
{{#each data.features as |feature index|}}
<div class="move-container" data-action="useFeature" data-feature="{{feature.uuid}}" data-action-type="{{feature.system.actionType}}">
<label class="moves-name">{{feature.name}} - {{feature.system.actionType}}</label>
<div class="move-description">{{{feature.system.description}}}</div>
</div>
{{/each}}
</div>
</div>
{{/if}}
</section>
</div>

View file

@ -34,6 +34,11 @@
{{> 'systems/daggerheart/templates/sheets/global/partials/inventory-item.hbs' item=effect type=../type}}
{{/if}}
{{/each}}
{{#each document.system.actions as |action|}}
{{#if (or (eq ../type 'action'))}}
{{> 'systems/daggerheart/templates/sheets/global/partials/inventory-item.hbs' item=action type=../type}}
{{/if}}
{{/each}}
{{#each document.system.features as |feature|}}
{{#if (or (eq ../type 'features'))}}
{{> 'systems/daggerheart/templates/sheets/global/partials/inventory-item.hbs' item=feature}}
@ -44,6 +49,9 @@
{{> 'systems/daggerheart/templates/sheets/global/partials/inventory-item.hbs' item=feature companion=true}}
{{/if}}
{{/each}}
{{#each adversaries as |adversary|}}
{{> 'systems/daggerheart/templates/sheets/global/partials/inventory-item.hbs' item=adversary type='adversary' hideControls=true isActor=true categoryAdversary=@../key}}
{{/each}}
{{/unless}}
</ul>

View file

@ -1,5 +1,5 @@
<li class="inventory-item" data-item-id="{{item.id}}" data-companion="{{companion}}">
<img src="{{item.img}}" class="item-img" data-action="useItem"/>
<li class="inventory-item" data-item-id="{{item.id}}" data-companion="{{companion}}" data-tooltip="{{concat "#item#" item.uuid}}">
<img src="{{item.img}}" class="item-img {{#if isActor}}actor-img{{/if}}" data-action="useItem"/>
<div class="item-label">
<div class="item-name">{{item.name}}</div>
{{#if (eq type 'weapon')}}
@ -100,32 +100,59 @@
{{/each}}
</div>
{{/if}}
{{#if (eq type 'action')}}
<div class="item-tags">
<div class="tag">
{{localize (concat 'DAGGERHEART.Actions.Types.' item.type '.name')}}
</div>
<div class="tag">
{{localize (concat 'DAGGERHEART.ActionType.' item.actionType)}}
</div>
</div>
{{/if}}
</div>
<div class="controls">
{{#if (eq type 'weapon')}}
<a class="{{#unless item.system.equipped}}unequipped{{/unless}}" data-action="toggleEquipItem" data-tooltip="{{#unless item.system.equipped}}{{localize 'DAGGERHEART.Tooltip.equip'}}{{else}}{{localize 'DAGGERHEART.Tooltip.unequip'}}{{/unless}}">
<i class="fa-solid fa-hands"></i>
</a>
{{#unless hideControls}}
{{#if isActor}}
<div class="controls">
{{#if (eq type 'adversary')}}
<a data-action="viewAdversary" data-potential-adversary="{{categoryAdversary}}" data-adversary="{{item.uuid}}" data-tooltip='{{localize "DAGGERHEART.Tooltip.openActorWorld"}}'>
<i class="fa-solid fa-globe"></i>
</a>
<a data-action='deleteAdversary' data-potential-adversary="{{categoryAdversary}}" data-adversary="{{item.uuid}}" data-tooltip='{{localize "DAGGERHEART.Tooltip.delete"}}'>
<i class='fas fa-trash'></i>
</a>
{{/if}}
</div>
{{else}}
<div class="controls">
{{#if (eq type 'weapon')}}
<a class="{{#unless item.system.equipped}}unequipped{{/unless}}" data-action="toggleEquipItem" data-tooltip="{{#unless item.system.equipped}}{{localize 'DAGGERHEART.Tooltip.equip'}}{{else}}{{localize 'DAGGERHEART.Tooltip.unequip'}}{{/unless}}">
<i class="fa-solid fa-hands"></i>
</a>
{{/if}}
{{#if (eq type 'armor')}}
<a class="{{#unless item.system.equipped}}unequipped{{/unless}}" data-action="toggleEquipItem" data-tooltip="{{#unless item.system.equipped}}{{localize 'DAGGERHEART.Tooltip.equip'}}{{else}}{{localize 'DAGGERHEART.Tooltip.unequip'}}{{/unless}}">
<i class="fa-solid fa-shield"></i>
</a>
{{/if}}
{{#if (eq type 'domainCard')}}
{{#unless item.system.inVault}}
<a data-action="toggleVault" data-tooltip="{{localize 'DAGGERHEART.Tooltip.sendToVault'}}">
<i class="fa-solid fa-arrow-down"></i>
</a>
{{else}}
<a data-action="toggleVault" data-tooltip="{{localize 'DAGGERHEART.Tooltip.sendToLoadout'}}">
<i class="fa-solid fa-arrow-up"></i>
</a>
{{/unless}}
{{/if}}
<a data-action="toChat" data-tooltip="{{localize 'DAGGERHEART.Tooltip.sendToChat'}}"><i class="fa-regular fa-message"></i></a>
<a data-action="triggerContextMenu" data-tooltip="{{localize 'DAGGERHEART.Tooltip.moreOptions'}}"><i class="fa-solid fa-ellipsis-vertical"></i></a>
</div>
{{/if}}
{{#if (eq type 'armor')}}
<a class="{{#unless item.system.equipped}}unequipped{{/unless}}" data-action="toggleEquipItem" data-tooltip="{{#unless item.system.equipped}}{{localize 'DAGGERHEART.Tooltip.equip'}}{{else}}{{localize 'DAGGERHEART.Tooltip.unequip'}}{{/unless}}">
<i class="fa-solid fa-shield"></i>
</a>
{{/if}}
{{#if (eq type 'domainCard')}}
{{#unless item.system.inVault}}
<a data-action="toggleVault" data-tooltip="{{localize 'DAGGERHEART.Tooltip.sendToVault'}}">
<i class="fa-solid fa-arrow-down"></i>
</a>
{{else}}
<a data-action="toggleVault" data-tooltip="{{localize 'DAGGERHEART.Tooltip.sendToLoadout'}}">
<i class="fa-solid fa-arrow-up"></i>
</a>
{{/unless}}
{{/if}}
<a data-action="toChat" data-tooltip="{{localize 'DAGGERHEART.Tooltip.sendToChat'}}"><i class="fa-regular fa-message"></i></a>
<a data-action="triggerContextMenu" data-tooltip="{{localize 'DAGGERHEART.Tooltip.moreOptions'}}"><i class="fa-solid fa-ellipsis-vertical"></i></a>
</div>
{{else}}
<span></span>
{{/unless}}
<div class="item-description">{{#unless isSidebar}}{{{item.system.description}}}{{/unless}}</div>
</li>

View file

@ -0,0 +1,5 @@
<div>
<div>{{name}}</div>
<img src="{{img}}" />
<div>{{{system.description}}}</div>
</div>

View file

@ -0,0 +1,5 @@
<div>
<div>{{name}}</div>
<img src="{{img}}" />
<div>{{{system.description}}}</div>
</div>

View file

@ -0,0 +1,5 @@
<div>
<div>{{name}}</div>
<img src="{{img}}" />
<div>{{{system.description}}}</div>
</div>

View file

@ -33,10 +33,8 @@
</fieldset>
</div>
<div class="tab {{this.tabs.config.cssClass}}" data-group="primary" data-tab="config">
{{#unless isNPC}}
{{> 'systems/daggerheart/templates/views/actionTypes/uses.hbs' fields=fields.uses.fields source=source.uses}}
{{> 'systems/daggerheart/templates/views/actionTypes/cost.hbs' fields=fields.cost.element.fields source=source.cost}}
{{/unless}}
{{#if fields.target}}{{> 'systems/daggerheart/templates/views/actionTypes/range-target.hbs' fields=(object range=fields.range target=fields.target.fields) source=(object target=source.target range=source.range)}}{{/if}}
</div>
<div class="tab {{this.tabs.effect.cssClass}}" data-group="primary" data-tab="effect">

View file

@ -1,61 +1,57 @@
<fieldset class="action-category">
<legend class="action-category-label" data-action="toggleSection" data-section="effects">
<div>Damage</div>
</legend>
<div class="action-category-data open">
{{#unless @root.isNPC}}
<div class="fas fa-plus icon-button" data-action="addDamage"></div>
{{#if @root.hasBaseDamage}}
<div>
{{formField @root.fields.damage.fields.includeBase value=@root.source.damage.includeBase label="Include Item Damage" name="damage.includeBase" }}
</div>
{{/if}}
{{/unless}}
{{#each source.parts as |dmg index|}}
{{#if @root.isNPC}}
{{formField ../fields.value.fields.custom.fields.enabled value=dmg.value.custom.enabled name=(concat ../path "damage.parts." index ".value.custom.enabled")}}
<input type="hidden" name="{{../path}}damage.parts.{{index}}.value.multiplier" value="{{dmg.value.multiplier}}">
{{#if dmg.value.custom.enabled}}
{{formField ../fields.value.fields.custom.fields.formula value=dmg.value.custom.formula name=(concat ../path "damage.parts." index ".value.custom.formula") localize=true}}
{{else}}
<div class="multi-display">
{{formField ../fields.value.fields.flatMultiplier value=dmg.value.flatMultiplier name=(concat ../path "damage.parts." index ".value.flatMultiplier") label="Multiplier" }}
{{formField ../fields.value.fields.dice value=dmg.value.dice name=(concat ../path "damage.parts." index ".value.dice")}}
{{formField ../fields.value.fields.bonus value=dmg.value.bonus name=(concat ../path "damage.parts." index ".value.bonus") localize=true}}
</div>
{{/if}}
{{formField ../fields.type value=dmg.type name=(concat ../path "damage.parts." index ".type") localize=true}}
<fieldset class="flex wrap">
<legend>Damage</legend>
{{#unless (eq path 'system.attack.')}}
<div class="fas fa-plus icon-button" data-action="addDamage"></div>
{{/unless}}
{{#unless @root.isNPC}}
{{#if @root.hasBaseDamage}}
<div>
{{formField @root.fields.damage.fields.includeBase value=@root.source.damage.includeBase label="Include Item Damage" name="damage.includeBase" }}
</div>
{{/if}}
{{/unless}}
{{#each source.parts as |dmg index|}}
{{#if @root.isNPC}}
{{formField ../fields.value.fields.custom.fields.enabled value=dmg.value.custom.enabled name=(concat ../path "damage.parts." index ".value.custom.enabled") classes="checkbox"}}
<input type="hidden" name="{{../path}}damage.parts.{{index}}.value.multiplier" value="{{dmg.value.multiplier}}">
{{#if dmg.value.custom.enabled}}
{{formField ../fields.value.fields.custom.fields.formula value=dmg.value.custom.formula name=(concat ../path "damage.parts." index ".value.custom.formula") localize=true}}
{{else}}
{{#with (@root.getRealIndex index) as | realIndex |}}
<fieldset{{#if dmg.base}} disabled{{/if}}>
{{#if (and (not @root.isNPC) @root.hasRoll (not dmg.base))}}
{{formField ../../fields.resultBased value=dmg.resultBased name=(concat "damage.parts." realIndex ".resultBased") localize=true}}
{{/if}}
{{#if (and (not @root.isNPC) @root.hasRoll (not dmg.base) dmg.resultBased)}}
<fieldset>
<legend>
<div>With Hope</div>
</legend>
{{> formula fields=../../fields.value.fields type=../../fields.type dmg=dmg source=dmg.value target="value" realIndex=realIndex}}
</fieldset>
<fieldset>
<legend>
<div>With Fear</div>
</legend>
{{> formula fields=../../fields.valueAlt.fields type=../../fields.type dmg=dmg source=dmg.valueAlt target="valueAlt" realIndex=realIndex}}
</fieldset>
{{else}}
{{> formula fields=../../fields.value.fields type=../fields.type dmg=dmg source=dmg.value target="value" realIndex=realIndex}}
{{/if}}
{{formField ../../fields.type value=dmg.type name=(concat "damage.parts." realIndex ".type") localize=true}}
<input type="hidden" name="damage.parts.{{realIndex}}.base" value="{{dmg.base}}">
{{#unless dmg.base}}<div class="fas fa-trash" data-action="removeDamage" data-index="{{realIndex}}"></div>{{/unless}}
</fieldset>
{{/with}}
{{formField ../fields.value.fields.flatMultiplier value=dmg.value.flatMultiplier name=(concat ../path "damage.parts." index ".value.flatMultiplier") label="Multiplier" classes="inline-child" }}
{{formField ../fields.value.fields.dice value=dmg.value.dice name=(concat ../path "damage.parts." index ".value.dice") classes="inline-child"}}
{{formField ../fields.value.fields.bonus value=dmg.value.bonus name=(concat ../path "damage.parts." index ".value.bonus") localize=true classes="inline-child"}}
{{/if}}
{{/each}}
</div>
{{formField ../fields.type value=dmg.type name=(concat ../path "damage.parts." index ".type") localize=true}}
{{else}}
{{#with (@root.getRealIndex index) as | realIndex |}}
<fieldset{{#if dmg.base}} disabled{{/if}}>
{{#if (and (not @root.isNPC) @root.hasRoll (not dmg.base))}}
{{formField ../../fields.resultBased value=dmg.resultBased name=(concat "damage.parts." realIndex ".resultBased") localize=true}}
{{/if}}
{{#if (and (not @root.isNPC) @root.hasRoll (not dmg.base) dmg.resultBased)}}
<fieldset>
<legend>
<div>With Hope</div>
</legend>
{{> formula fields=../../fields.value.fields type=../../fields.type dmg=dmg source=dmg.value target="value" realIndex=realIndex}}
</fieldset>
<fieldset>
<legend>
<div>With Fear</div>
</legend>
{{> formula fields=../../fields.valueAlt.fields type=../../fields.type dmg=dmg source=dmg.valueAlt target="valueAlt" realIndex=realIndex}}
</fieldset>
{{else}}
{{> formula fields=../../fields.value.fields type=../fields.type dmg=dmg source=dmg.value target="value" realIndex=realIndex}}
{{/if}}
{{formField ../../fields.type value=dmg.type name=(concat "damage.parts." realIndex ".type") localize=true}}
<input type="hidden" name="damage.parts.{{realIndex}}.base" value="{{dmg.base}}">
{{#unless dmg.base}}<div class="fas fa-trash" data-action="removeDamage" data-index="{{realIndex}}"></div>{{/unless}}
</fieldset>
{{/with}}
{{/if}}
{{/each}}
</fieldset>
{{#*inline "formula"}}

View file

@ -24,5 +24,8 @@
</div>
{{/if}}
{{/if}}
{{#unless (eq source.type "diceSet")}}
{{formField fields.advState label= "Advantage State" name="roll.advState" value=source.advState localize=true}}
{{/unless}}
</div>
</fieldset>

View file

@ -2,7 +2,11 @@
<div class="form-group">
<label><strong>{{title}}</strong></label>
<div class="form-fields">
<input type="text" value="{{formula}}" disabled />
{{!-- <input type="text" value="{{formula}}" disabled /> --}}
<div>{{@root.formula}}</div>
</div>
<div>
<input type="text" value="{{extraFormula}}" name="extraFormula" placeholder="Situational Bonus">
</div>
</div>
{{!-- {{#each bonusDamage as |damage index|}}

View file

@ -2,25 +2,58 @@
{{#if @root.hasRoll}}
<div class="roll-dialog-container">
<div class="flexcol">
{{#unless @root.isLite}}
<div class="roll-dialog-experience-container">
{{#each experiences}}
{{#if name}}
<div class="roll-dialog-chip {{#if (includes ../selectedExperiences id)}}selected{{/if}}" data-action="selectExperience" data-key="{{id}}">
<span>{{name}}</span>
<span>+{{value}}</span>
</div>
{{/if}}
{{/each}}
</div>
<div class="flexrow">
<button class="disadvantage flex1 {{#if (eq advantage 1)}}selected{{/if}}" data-action="updateIsAdvantage" data-advantage="1">{{localize "DAGGERHEART.General.Advantage.Full"}}</button>
<button class="disadvantage flex1 {{#if (eq advantage -1)}}selected{{/if}}" data-action="updateIsAdvantage" data-advantage="-1">{{localize "DAGGERHEART.General.Disadvantage.Full"}}</button>
</div>
{{/unless}}
<div>
<input type="text" value="{{@root.formula}}" disabled>
{{!-- <input type="text" value="{{@root.formula}}" disabled> --}}
<div>{{@root.formula}}</div>
</div>
{{#unless @root.isLite}}
<div class="roll-dialog-experience-container">
{{#each experiences}}
{{#if name}}
<div class="roll-dialog-chip {{#if (includes ../selectedExperiences id)}}selected{{/if}}" data-action="selectExperience" data-key="{{id}}">
<span>{{name}}</span>
<span>+{{value}}</span>
</div>
{{/if}}
{{/each}}
</div>
<div class="flexrow">
<button class="disadvantage flex1 {{#if (eq advantage 1)}}selected{{/if}}" data-action="updateIsAdvantage" data-advantage="1">{{localize "DAGGERHEART.General.Advantage.Full"}}</button>
<button class="disadvantage flex1 {{#if (eq advantage -1)}}selected{{/if}}" data-action="updateIsAdvantage" data-advantage="-1">{{localize "DAGGERHEART.General.Disadvantage.Full"}}</button>
</div>
{{#if (eq @root.rollType 'D20Roll')}}
<div class="flexrow">
<select name="roll.dice.d20">
{{selectOptions diceOptions selected=@root.roll.d20.denomination}}
</select>
</div>
{{/if}}
{{#if (eq @root.rollType 'DualityRoll')}}
<div class="flexrow">
<div>Hope Dice</div>
<select name="roll.dice.dHope">
{{selectOptions diceOptions selected=@root.roll.dHope.denomination}}
</select>
</div>
<div class="flexrow">
<div>Fear Dice</div>
<select name="roll.dice.dFear">
{{selectOptions diceOptions selected=@root.roll.dFear.denomination}}
</select>
</div>
{{#if roll.advantage}}
<div class="flexrow">
<div>Adv/Disadv Dice</div>
<select name="roll.dice.advantageFaces">
{{selectOptions diceOptions selected=@root.roll.dAdvantage.denomination}}
</select>
</div>
{{/if}}
{{/if}}
<div>
<input type="text" value="{{extraFormula}}" name="extraFormula" placeholder="Situational Bonus">
</div>
{{/unless}}
{{!-- {{#if (not isNpc)}} --}}
{{!-- <div class="form-group">
<label>Hope</label>