File Structure Rework (#262)

* Restructured all the files

* Moved build/daggerheart.js to ./daggerheart.js. Changed rollup to use the css file instead of the less

* Restored build/ folder

* Mvoed config out form under application

* Moved roll.mjs to module/dice and renamed to dhRolls.mjs

* Update module/canvas/placeables/_module.mjs

Co-authored-by: joaquinpereyra98 <24190917+joaquinpereyra98@users.noreply.github.com>

* Le massive export update

* Removed unncessary import

---------

Co-authored-by: joaquinpereyra98 <24190917+joaquinpereyra98@users.noreply.github.com>
This commit is contained in:
WBHarry 2025-07-05 00:26:33 +02:00 committed by GitHub
parent 099a4576da
commit 9d76405221
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
203 changed files with 1556 additions and 2565 deletions

View file

@ -1,34 +0,0 @@
<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

@ -1,23 +0,0 @@
<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

@ -1,38 +0,0 @@
<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

@ -1,23 +0,0 @@
<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

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

View file

@ -1,21 +0,0 @@
<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.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>
</section>

View file

@ -1,23 +0,0 @@
<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.evasion.fields.value value=document.system.evasion.value localize=true}}
{{formGroup systemFields.resources.fields.stress.fields.value value=document.system.resources.stress.value label='Current Stress'}}
{{formGroup systemFields.resources.fields.stress.fields.max value=document.system.resources.stress.max label='Max Stress'}}
</div>
<div class="form-group">
<div class="form-fields">
<label>{{localize "DAGGERHEART.Sheets.Companion.FIELDS.partner.label"}}</label>
<select class="partner-value">
{{selectOptions playerCharacters selected=document.system.partner.uuid labelAttr="name" valueAttr="key" blank=""}}
</select>
</div>
</div>
</fieldset>
<button data-action="levelUp" {{#if (not document.system.levelData.canLevelUp)}}disabled{{/if}}>Level Up</button>
</section>

View file

@ -1,18 +0,0 @@
<section
class='tab {{tabs.experiences.cssClass}} {{tabs.experiences.id}}'
data-tab='{{tabs.experiences.id}}'
data-group='{{tabs.experiences.group}}'
>
<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 disabled class="modifier" type="text" name="system.experiences.{{key}}.value" value="{{experience.value}}" data-dtype="Number" />
</li>
{{/each}}
</ul>
</fieldset>
</section>

View file

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

View file

@ -1,34 +0,0 @@
<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

@ -1,28 +0,0 @@
<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

@ -1,16 +0,0 @@
<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

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

View file

@ -1,5 +1,5 @@
<li class="inventory-item" data-item-id="{{item.id}}" data-item-uuid="{{item.uuid}}" data-type="{{type}}" data-companion="{{companion}}" {{#if (not noTooltip)}}data-tooltip="{{concat "#item#" item.uuid}}"{{/if}}>
<img src="{{item.img}}" class="item-img {{#if isActor}}actor-img{{/if}}" data-action="useItem"/>
<li class="inventory-item" data-item-id="{{item.id}}" data-item-uuid="{{item.uuid}}" data-type="{{type}}" data-companion="{{companion}}">
<img src="{{item.img}}" class="item-img {{#if isActor}}actor-img{{/if}}" data-action="useItem" {{#if (not noTooltip)}}data-tooltip="{{concat "#item#" item.uuid}}"{{/if}} />
<div class="item-label">
{{#if isCompanion}}
<a class="item-name" data-action="attackRoll">{{item.name}}</a>

View file

@ -1,13 +0,0 @@
<fieldset class="left-main-container armor-section active-item-section item-section">
<legend class="legend armor-container">
<span>{{localize "DAGGERHEART.Sheets.PC.Armor.Title"}}</span>
</legend>
<div class="active-item-container">
<div class="flexrow">
<input value="{{armor.name}}" type="text" />
<input value="{{armor.system.baseScore}}" type="text" />
</div>
<input value="{{localize armor.system.featureInfo.name}} {{#if armor.system.featureInfo}}({{localize armor.system.featureInfo.description}}){{/if}}" type="text" />
</div>
</fieldset>

View file

@ -1,36 +0,0 @@
<fieldset class="abilities-container">
<legend class="legend">
{{localize "Attributes"}}
<i data-action="toggleEditAttributes" title="{{localize "DAGGERHEART.Sheets.PC.Attributes.AttributeBaseMenuTitle"}}" class="fa-solid fa-gear icon-button" style="position: absolute; top: 1px; right: calc(50% - 56px); background: url(../ui/parchment.jpg) repeat;"></i>
</legend>
{{#each this.attributes as |attribute key|}}
<div class="attribute">
<div class="attribute-banner">
<img class="attribute-roll" data-action="attributeRoll" data-attribute="{{key}}" data-value="{{attribute.total}}" src="icons/svg/d12-grey.svg" />
<div class="attribute-text">{{key}}</div>
</div>
<div class="attribute-image">
{{#if ../editAttributes}}
<select class="attribute-value{{#if (lt attribute.total 0)}} negative{{/if}}{{#if (and (not attribute.total) (not ../abilityScoresFinished))}} unselected{{/if}}" data-attribute="{{key}}">
{{#if (not (eq attribute.total 0))}}<option value="">{{attribute.total}}</option>{{/if}}
{{#each ../abilityScoreArray as |option|}}
<option value="{{option.total}}">{{option.name}}</option>
{{/each}}
</select>
{{else}}
<div class="attribute-text {{#if (lt attribute.total 0)}}negative{{/if}}">{{attribute.total}}</div>
{{/if}}
<img src="systems/daggerheart/assets/AttributeShield.svg" />
<div>
{{#each this.descriptors}}
<div class="descriptor">{{this}}</div>
{{/each}}
</div>
</div>
{{#each attribute.verbs}}
<div class="attribute-verb">{{this}}</div>
{{/each}}
</div>
{{/each}}
</fieldset>

View file

@ -1,33 +0,0 @@
<fieldset class="left-main-container">
<legend class="legend">{{localize "Defense"}}</legend>
<div class="defense-row">
<div class="defense-section">
<div class="defense-container">
<div class="defense-value">{{document.system.evasion.total}}</div>
<img src="systems/daggerheart/assets/AttributeShield.svg" />
<div class="defense-banner">{{localize "DAGGERHEART.Sheets.PC.Defense.Evasion"}}</div>
</div>
</div>
<div class="vertical-separator" style="height: 84px; align-self: baseline; margin-right: 8px;"></div>
<div class="defense-section armor">
<div class="defense-container">
<div class="defense-value">{{#if document.system.armor.system.baseScore}}{{document.system.armor.system.baseScore}}{{else}}0{{/if}}</div>
<img src="systems/daggerheart/assets/AttributeShield.svg" />
<div class="defense-banner">{{localize "DAGGERHEART.Sheets.PC.Defense.Armor"}}</div>
</div>
{{#if document.system.armor.system.marks}}
<div class="armor-marks">
{{#times (subtract 12 document.system.armor.system.marks.max)}}
<input class="mark disabled-mark" type="checkbox" disabled />
{{/times}}
{{#times document.system.armor.system.marks.max}}
{{#with (add this 1)}}
<input class="mark" type="checkbox" data-action="toggleMarks" data-value="{{this}}" {{ checked (gte ../../document.system.armor.system.marks.value this) }} />
{{/with}}
{{/times}}
</div>
{{/if}}
</div>
</div>
</fieldset>

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">{{card.system.level}} <img src="icons/svg/sword.svg" /></div>
{{#if inVault}}
<div class="abilities-card-refresh-cost icon-button {{#if card.sendToLoadoutDisabled}}disabled{{/if}}" data-action="sendToLoadout" data-domain="{{card.uuid}}" title="{{localize "DAGGERHEART.Sheets.PC.DomainCard.Recall"}}">
{{card.system.recallCost}} <i class="fa-solid fa-bolt"></i>
</div>
{{else}}
<div class="abilities-card-refresh-cost icon-button" data-action="sendToVault" data-domain="{{card.uuid}}" title="{{localize "DAGGERHEART.Sheets.PC.DomainCard.ToVault"}}">
{{card.system.recallCost}} <i class="fa-solid fa-bolt"></i>
</div>
{{/if}}
<div class="abilities-card-type">
<div class="abilities-card-type-text">{{card.system.type}}</div>
</div>
</div>
<div class="abilities-text-container domain">
<div ><i data-action="removeCard" data-type="{{card.type}}" data-key="{{card.uuid}}" class="fas fa-trash icon-button row-icon"></i></div>
<div class="abilities-card-title">{{card.name}}</div>
{{#if inVault}}
<div class="abilities-card-description">{{{card.system.effect}}}</div>
{{else}}
<div class="abilities-card-description abilities-card-effect" data-action="useDomainCard" data-key="{{card.uuid}}" data-domain="{{card.system.domain}}">{{{card.system.effect}}}</div>
{{/if}}
</div>
</div>

View file

@ -1,69 +0,0 @@
<div>
<h2>
{{localize "Effects"}}
<select class="effect-select">
{{selectOptions this.config.effectTypes selected=this.selectedEffectType labelAttr="name" localize=true blank=""}}
</select>
<i class="fa-solid fa-plus icon-button {{#if (not this.selectedEffectType)}}disabled{{/if}}" data-action="addEffect"></i>
</h2>
{{#each this.effects as |effect key|}}
<fieldset>
<legend>
{{effect.type}}
<i class="fa-solid fa-trash icon-button flex0" data-action="removeEffect" data-effect="{{key}}"></i>
</legend>
{{#if effect.applyLocationChoices}}
<div class="form-group">
<label>Apply Location</label>
<select name="system.effects.{{key}}.appliesOn">
{{selectOptions effect.applyLocationChoices selected=effect.appliesOn localize=true}}
</select>
</div>
{{/if}}
{{#if (eq effect.valueType ../config.valueTypes.numberString.id)}}
{{#if (eq effect.type ../config.effectTypes.damage.id) }}
<div class="form-group">
{{!-- <label></label> --}}
<div class="form-fields">
<label>Value</label>
<input type="text" name="system.effects.{{key}}.valueData.value" value="{{effect.valueData.value}}" />
<label style="text-wrap: nowrap;">Initially Selected</label>
<input type="checkbox" name="system.effects.{{key}}.initiallySelected" {{checked effect.initiallySelected}} />
</div>
</div>
{{!-- <div class="flexrow">
<input type="text" name="system.effects.{{key}}.valueData.value" value="{{effect.valueData.value}}" />
<i class="fa-solid fa-trash icon-button flex0" data-action="removeEffect" data-effect="{{key}}"></i>
</div> --}}
<div class="form-group">
<label>Hope Increase</label>
<div class="form-fields">
<input type="text" name="system.effects.{{key}}.valueData.hopeIncrease" value="{{effect.valueData.hopeIncrease}}" />
</div>
</div>
{{else}}
<div class="form-group">
{{!-- <label></label> --}}
<div class="form-fields">
<label>Value</label>
<input type="text" name="system.effects.{{key}}.valueData.value" value="{{effect.valueData.value}}" />
</div>
</div>
{{/if}}
{{/if}}
{{#if (eq effect.valueType ../config.valueTypes.select.id)}}
<div class="flexrow">
<select name="system.effects.{{key}}.valueData.fromValue" value="{{effect.valueData.fromValue}}">
{{selectOptions effect.options selected=effect.valueData.fromValue labelAttr="name" valueAttr="value" localize=true blank="" }}
</select>
</div>
<div class="flexrow">
<select name="system.effects.{{key}}.valueData.value" value="{{effect.valueData.value}}">
{{selectOptions effect.options selected=effect.valueData.value labelAttr="name" valueAttr="value" localize=true blank="" }}
</select>
</div>
{{/if}}
</fieldset>
{{/each}}
</div>

View file

@ -1,15 +0,0 @@
<fieldset class="left-main-container experience-container">
<legend class="legend">{{localize "DAGGERHEART.Sheets.PC.Experience.Title"}}</legend>
{{#each document.system.experiences as |experience id|}}
<div class="experience-row">
<input name="{{concat "system.experiences." id ".description"}}" data-experience={{id}} value="{{experience.description}}" type="text" />
<div name="{{concat "system.experiences." id ".value"}}" class="experience-value">{{experience.total}}</div>
</div>
{{/each}}
{{#times (subtract 5 (length document.system.experiences))}}
<div class="experience-row">
<input type="text" class="disabled-experience" disabled />
<div class="experience-value empty"></div>
</div>
{{/times}}
</fieldset>

View file

@ -1,48 +0,0 @@
<fieldset class="left-main-container" style="flex: 1;">
<legend class="legend">
{{#if this.document.system.class.value}}
{{#if this.document.system.multiclass.value}}
<span class="class-feature-selectable {{#if this.multiclass}}inactive{{/if}}" data-action="selectFeatureSet" data-multiclass="false">{{this.document.system.class.name}}&nbsp;{{localize "DAGGERHEART.General.Features"}}</span>
/&nbsp;
<span class="class-feature-selectable {{#if (not this.multiclass)}}inactive{{/if}}" data-action="selectFeatureSet" data-multiclass="true">{{this.document.system.multiclass.name}}&nbsp;{{localize "DAGGERHEART.General.Features"}}</span>
{{else}}
<span>{{this.document.system.class.value.name}}&nbsp;{{localize "DAGGERHEART.General.Features"}}</span>
{{/if}}
{{else}}
<span>{{localize "DAGGERHEART.Sheets.PC.Features.Title"}}</span>
{{/if}}
</legend>
<div class="features-container" style="font-size: 11px;">
{{#each this.features as |feature index|}}
<div class="feature-container">
<img class="feature-img" src="{{feature.img}}" />
<div class="feature-label icon-button" data-action="viewObject" data-value="{{feature.uuid}}">{{feature.name}}</div>
<button data-action="useFeature" data-id="{{feature.uuid}}"><i class="fa-solid fa-message"></i></button>
</div>
<div class="flexrow flex-centered">
<div>{{{feature.system.description}}}</div> {{!-- Maybe maybe --}}
{{#if (eq feature.system.featureType.type 'input')}}
<input class="feature-input flex0" type="text" data-feature="{{feature.uuid}}" value="{{feature.system.featureType.data.value}}" data-dtype="Number" />
{{/if}}
{{#if (eq feature.system.featureType.type 'dice')}}
<div class="feature-tick-container">
{{#times feature.system.featureType.data.max}}
{{#if (gt ../this.system.featureType.data.property this)}}
<div data-action="toggleFeatureDice" data-feature="{{../this.uuid}}" data-index="{{this}}" class="feature-tick {{#if (lookup (lookup ../this.system.featureType.data.numbers this) 'used')}}used{{/if}}">
{{#if (lookup (lookup ../this.system.featureType.data.numbers this) 'value')}}
<div class="feature-dice-value">{{lookup (lookup ../this.system.featureType.data.numbers this) 'value'}}</div>
{{else}}
<img src="icons/dice/{{../this.system.featureType.data.value}}black.svg" />
{{/if}}
</div>
{{else}}
<div class="feature-tick disabled"></div>
{{/if}}
{{/times}}
</div>
{{/if}}
</div>
{{/each}}
</div>
</fieldset>

View file

@ -1,88 +0,0 @@
<fieldset class="left-main-container" style="padding-top: 0; margin-top: 8px;">
<legend class="legend" style="line-height: 2px;">{{localize this.inventory.currency.title}}</legend>
<div class="gold-section">
<fieldset class="gold-fieldset">
<legend>
{{localize this.inventory.currency.coins}}
</legend>
<div class="gold-column">
<div class="gold-row">
{{#times 5}}
{{#with (add this 1)}}
<img src="icons/svg/coins.svg" class="{{#if (gte ../../document.system.gold.coins this)}}owned{{/if}}" data-action="toggleGold" data-value="{{this}}" data-type="coins" />
{{!-- <input class="gold-checkbox" type="checkbox" data-action="toggleGold" data-value="{{this}}" data-type="hoards" {{ checked (gte ../../document.system.gold.hoards this) }} /> --}}
{{/with}}
{{/times}}
</div>
<div class="gold-row">
{{#times 4}}
{{#with (add this 6)}}
<img src="icons/svg/coins.svg" class="{{#if (gte ../../document.system.gold.coins this)}}owned{{/if}}" data-action="toggleGold" data-value="{{this}}" data-type="coins" />
{{!-- <input class="gold-checkbox" type="checkbox" data-action="toggleGold" data-value="{{this}}" data-type="hoards" {{ checked (gte ../../document.system.gold.hoards this) }} /> --}}
{{/with}}
{{/times}}
</div>
</div>
</fieldset>
<fieldset class="gold-fieldset">
<legend>
{{localize this.inventory.currency.handfulls}}
</legend>
<div class="gold-column">
<div class="gold-row">
{{#times 5}}
{{#with (add this 1)}}
{{!-- <input class="gold-checkbox" type="checkbox" data-action="toggleGold" data-value="{{this}}" data-type="handfulls" {{ checked (gte ../../document.system.gold.handfulls this) }} /> --}}
<i class="fa-solid fa-coins {{#if (gte ../../document.system.gold.handfulls this)}}owned{{/if}}" data-action="toggleGold" data-value="{{this}}" data-type="handfulls"></i>
{{/with}}
{{/times}}
</div>
<div class="gold-row">
{{#times 4}}
{{#with (add this 6)}}
{{!-- <input class="gold-checkbox" type="checkbox" data-action="toggleGold" data-value="{{this}}" data-type="handfulls" {{ checked (gte ../../document.system.gold.handfulls this) }} /> --}}
<i class="fa-solid fa-coins {{#if (gte ../../document.system.gold.handfulls this)}}owned{{/if}}" data-action="toggleGold" data-value="{{this}}" data-type="handfulls"></i>
{{/with}}
{{/times}}
</div>
</div>
</fieldset>
<fieldset class="gold-fieldset">
<legend>
{{localize this.inventory.currency.bags}}
</legend>
<div class="gold-column">
<div class="gold-row">
{{#times 5}}
{{#with (add this 1)}}
{{!-- <input class="gold-checkbox" type="checkbox" data-action="toggleGold" data-value="{{this}}" data-type="handfulls" {{ checked (gte ../../document.system.gold.handfulls this) }} /> --}}
<i class="fa-solid fa-sack-dollar {{#if (gte ../../document.system.gold.bags this)}}owned{{/if}}" data-action="toggleGold" data-value="{{this}}" data-type="bags"></i>
{{/with}}
{{/times}}
</div>
<div class="gold-row">
{{#times 4}}
{{#with (add this 6)}}
{{!-- <input class="gold-checkbox" type="checkbox" data-action="toggleGold" data-value="{{this}}" data-type="handfulls" {{ checked (gte ../../document.system.gold.handfulls this) }} /> --}}
<i class="fa-solid fa-sack-dollar {{#if (gte ../../document.system.gold.bags this)}}owned{{/if}}" data-action="toggleGold" data-value="{{this}}" data-type="bags"></i>
{{/with}}
{{/times}}
</div>
{{!-- <input class="gold-checkbox" type="checkbox" data-action="toggleGold" data-value="{{this}}" data-type="bags" {{ checked (gte ../../document.system.gold.bags this) }} /> --}}
</div>
</fieldset>
<fieldset class="gold-fieldset" style="min-width: 56px;">
<legend>
{{localize this.inventory.currency.chests}}
</legend>
<div class="gold-column">
<img src="icons/svg/chest.svg" class="{{#if (gte document.system.gold.chests 1)}}owned{{/if}}" style="min-height: 32px; min-width: 32px;" data-action="toggleGold" data-value="1" data-type="chests" />
{{!-- <input class="gold-checkbox" type="checkbox" data-action="toggleGold" data-value="{{this}}" data-type="chests" {{ checked (gte ../../document.system.gold.chests this) }} /> --}}
</div>
</fieldset>
</div>
</fieldset>

View file

@ -1,54 +0,0 @@
<fieldset class="left-main-container">
<legend class="legend">{{localize "DAGGERHEART.Sheets.PC.Health.Title"}}</legend>
<div class="threshold-container">
<div class="threshold-spacer">
<div class="health-category">{{localize "DAGGERHEART.Sheets.PC.Health.Minor"}}</div>
</div>
<div class="threshold-box">
{{document.system.damageThresholds.major}}
</div>
<div class="threshold-spacer">
<i class="fa-solid fa-caret-left"></i>
<div class="health-category">{{localize "DAGGERHEART.Sheets.PC.Health.Major"}}</div>
</div>
<div class="threshold-box">
{{document.system.damageThresholds.severe}}
</div>
<div class="threshold-spacer">
<i class="fa-solid fa-caret-left"></i>
<div class="health-category">{{localize "DAGGERHEART.Sheets.PC.Health.Severe"}}</div>
</div>
<i data-action="makeDeathMove" class="fas fa-skull death-save {{#if document.system.deathMoveViable}}disabled{{/if}}" title="{{localize "DAGGERHEART.Sheets.PC.Health.DeathMoveTooltip"}}"></i>
</div>
<div class="flexrow" style="flex-wrap: nowrap; align-items: center;">
<div class="flexcol flex0">
<div class="resource-label">{{localize "DAGGERHEART.Sheets.PC.Health.HealthTitle"}}</div>
<div class="resource-label" style="margin-right: 1px;">{{localize "DAGGERHEART.Sheets.PC.Health.StressTitle"}}</div>
</div>
<div class="flexcol">
<div class="flexrow" style="flex-wrap: nowrap;">
{{#times document.system.resources.hitPoints.maxTotal}}
{{#with (add this 1)}}
<input class="resource-box" type="checkbox" data-action="toggleHP" data-value="{{this}}" {{ checked (gte ../../document.system.resources.hitPoints.value this) }} />
{{/with}}
{{/times}}
{{#times (subtract 12 document.system.resources.hitPoints.maxTotal)}}
<input class="resource-box disabled" type="checkbox" disabled />
{{/times}}
</div>
<div class="flexrow">
{{#times document.system.resources.stress.maxTotal}}
{{#with (add this 1)}}
<input class="resource-box" type="checkbox" data-action="toggleStress" data-value="{{this}}" {{ checked (gte ../../document.system.resources.stress.value this) }} />
{{/with}}
{{/times}}
{{#times (subtract 12 document.system.resources.stress.maxTotal)}}
<input class="resource-box disabled" type="checkbox" disabled />
{{/times}}
</div>
</div>
</div>
</fieldset>

View file

@ -1,20 +0,0 @@
<div>
{{formInput systemFields.description value=source.system.description enriched=source.system.description localize=true toggled=true}}
<div class="ability-title">
<h2>{{localize "DAGGERHEART.Sheets.Heritage.Title"}}</h2>
</div>
<div>
{{#each source.system.abilities as |ability key|}}
<div class="feature-container">
<div class="feature-inner-container">
<img src="{{ability.img}}" />
<div class="feature-title">{{ability.name}}</div>
</div>
<div class="subclass-inner-container">
<button data-action="editAbility" data-ability={{ability.uuid}}><i class="fa-solid fa-fw fa-search"></i></button>
<button data-action="deleteAbility" data-ability={{ability.uuid}}><i class="fa-solid fa-trash"></i></button>
</div>
</div>
{{/each}}
</div>
</div>

View file

@ -1,15 +0,0 @@
<fieldset class="left-main-container">
<legend class="legend">{{localize "DAGGERHEART.Sheets.PC.Hope.Title"}}</legend>
<div class="flex-spaced">
<span class="hope-text">{{localize "DAGGERHEART.Sheets.PC.Hope.Description"}}</span>
<div class="hope-container">
{{#times 6}}
<span class="hope-inner-container">
<input class="hope-value" type="checkbox" data-action="toggleHope" data-value="{{add this 1}}" {{ checked (gte ../document.system.resources.hope.value (add this 1)) }} {{#if (gte this ../document.system.resources.hope.max)}}disabled{{/if}} />
{{#if (gte this ../document.system.resources.hope.max)}}<i class="fa-solid fa-droplet-slash hope-scar"></i>{{/if}}
</span>
{{/times}}
</div>
</div>
</fieldset>

View file

@ -1,25 +0,0 @@
<div>
{{#with (concat "system." featureType "Feature" ".")}}
<div class="editor-form-group">
<label>{{localize "DAGGERHEART.Sheets.Subclass.SubclassFeature.Description"}}</label>
{{formInput ../field.description value=../feature.description enriched=../feature.description localize=true toggled=true}}
{{!-- {{editor ../feature.description target=(concat this "description") button=true}} --}}
</div>
<div class="flexrow">
<h2>{{localize "DAGGERHEART.Sheets.Subclass.SubclassFeature.Abilities"}}</h2>
</div>
{{#each ../feature/abilities as |ability key|}}
<div class="feature-container">
<div class="feature-inner-container">
<img src="{{ability.img}}" />
<div class="feature-title">{{ability.name}}</div>
</div>
<div class="subclass-inner-container">
<button data-action="editAbility" data-ability={{ability.uuid}}><i class="fa-solid fa-fw fa-search"></i></button>
<button data-action="deleteFeatureAbility" data-feature="{{../../featureType}}" data-ability={{ability.uuid}}><i class="fa-solid fa-trash"></i></button>
</div>
</div>
{{/each}}
{{/with}}
</div>

View file

@ -1,49 +0,0 @@
<fieldset class="left-main-container weapon-section active-item-section item-section">
<legend class="legend">
<div class="weapons-title">
<span>{{localize "DAGGERHEART.Sheets.PC.Weapons.Title"}}</span>
<div class="proficiency-container">
<span>{{localize "DAGGERHEART.Sheets.PC.Weapons.ProficiencyTitle"}}</span>
{{#times 6}}
<i class="fa-solid fa-circle proficiency-dot {{#if (gt ../proficiency.total this)}}marked{{/if}}"></i>
{{/times}}
</div>
<div class="proficiency-container-visual-element"></div>
</div>
<div class="weapons-burden">
<i class="fa-solid fa-hand weapons-burden-icon left {{#if (or (eq weaponBurden "oneHanded") (eq weaponBurden "twoHanded"))}}active{{/if}}"></i>
<i class="fa-solid fa-hand weapons-burden-icon right {{#if (eq weaponBurden "twoHanded")}}active{{/if}}"></i>
</div>
</legend>
<div class="active-item-container">
<h2 class="weapons-label-row">
{{localize "DAGGERHEART.Sheets.PC.Weapons.PrimaryTitle"}}
{{#if primaryWeapon}}
<img class="damage-roll" data-action="attackRoll" data-weapon="{{primaryWeapon.uuid}}" src="icons/svg/d12-grey.svg" />
{{/if}}
</h2>
<div class="flexrow">
<input value="{{primaryWeapon.name}}" type="text" />
<input value="{{localize primaryWeapon.trait}}" type="text" />
<input value="{{localize primaryWeapon.range.label}}" type="text" />
<input value="{{primaryWeapon.damage.value}} {{#if primaryWeapon}}({{localize primaryWeapon.damage.type.abbreviation}}){{/if}}" type="text" />
</div>
<input value="{{localize primaryWeapon.feature.label}} {{#if primaryWeapon.feature}}({{localize primaryWeapon.feature.description}}){{/if}}" type="text" />
</div>
<div class="active-item-container">
<h2 class="weapons-label-row">
{{localize "DAGGERHEART.Sheets.PC.Weapons.SecondaryTitle"}}
{{#if secondaryWeapon}}
<img class="damage-roll" data-action="damageRoll" data-value="{{secondaryWeapon.damage.value}}" src="icons/svg/d12-grey.svg" />
{{/if}}
</h2>
<div class="flexrow">
<input value="{{secondaryWeapon.name}}" type="text" />
<input value="{{localize secondaryWeapon.trait}}" type="text" />
<input value="{{localize secondaryWeapon.range.label}}" type="text" />
<input value="{{secondaryWeapon.damage.label}} {{#if secondaryWeapon}}({{localize secondaryWeapon.damage.type.abbreviation}}){{/if}}" type="text" />
</div>
<input value="{{localize secondaryWeapon.feature.name}} {{#if secondaryWeapon.feature}}({{localize secondaryWeapon.feature.description}}){{/if}}" style="text-overflow: ellipsis;" type="text" />
</div>
</fieldset>