Initial commit

This commit is contained in:
WBHarry 2025-05-22 16:53:39 +02:00
commit aa4021d1a2
163 changed files with 26530 additions and 0 deletions

View file

@ -0,0 +1,64 @@
<div>
<header>
{{formField fields.name value=source.name label="Name" rootId=partId}}
<nav class="sheet-tabs tabs">
{{#each tabs 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>
</header>
<section>
<div class="tab {{this.tabs.effects.cssClass}}" data-group="primary" data-tab="effects">
<fieldset class="action-category">
<legend class="action-category-label" data-action="toggleSection" data-section="damage">
<div>Damage</div>
<i class="fa-solid {{#if (eq openSection 'damage')}}fa-angle-up{{else}}fa-angle-down{{/if}}"></i>
</legend>
<div class="action-category-data {{#if (eq openSection 'damage')}}open{{/if}}">
{{formField fields.damage.fields.type value=source.damage.type label="Damage Type" rootId=partId localize=true}}
{{formField fields.damage.fields.value value=source.damage.value label="Damage" rootId=partId localize=true}}
</div>
</fieldset>
<fieldset class="action-category">
<legend class="action-category-label" data-action="toggleSection" data-section="healing">
<div>Healing</div>
<i class="fa-solid {{#if (eq openSection 'healing')}}fa-angle-up{{else}}fa-angle-down{{/if}}"></i>
</legend>
<div class="action-category-data {{#if (eq openSection 'healing')}}open{{/if}}">
{{formField fields.healing.fields.type value=source.healing.type label="Healing Type" rootId=partId localize=true}}
{{formField fields.healing.fields.value value=source.healing.value label="Healing" rootId=partId localize=true}}
</div>
</fieldset>
</div>
<div class="tab {{this.tabs.useage.cssClass}}" data-group="primary" data-tab="useage">
<fieldset class="action-category">
<legend class="action-category-label" data-action="toggleSection" data-section="cost">
<div>Cost</div>
<i class="fa-solid {{#if (eq openSection 'cost')}}fa-angle-up{{else}}fa-angle-down{{/if}}"></i>
</legend>
<div class="action-category-data {{#if (eq openSection 'cost')}}open{{/if}}">
{{formField fields.cost.fields.type value=source.cost.type label="Cost Type" rootId=partId}}
{{formField fields.cost.fields.value value=source.cost.value label="Value" rootId=partId}}
</div>
</fieldset>
{{formField fields.target.fields.type value=source.target.type label="Target Type" rootId=partId}}
</div>
<div class="tab {{this.tabs.conditions.cssClass}}" data-group="primary" data-tab="conditions">
{{!-- <h2>
{{localize "Conditions"}}
<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="addCondition"></i>
</h2> --}}
</div>
</section>
<button type="submit">Save</button>
</div>

View file

@ -0,0 +1,72 @@
<div>
<div class="ancestry-section">
<h2>{{localize "Daggerheart Ancestries"}}</h2>
<div class="ancestry-container">
{{#each systemAncestries}}
<div class="ancestry-inner-container">
<div class="image-container">
<img src="{{this.img}}" class="{{#if this.selected}}selected{{else}}{{#if (eq ../selectedAncestries.length 2)}}disabled{{/if}}{{/if}}" data-action="selectAncestry" data-uuid="{{this.uuid}}" />
</div>
<div class="name-container">
<div data-action="viewItem" data-uuid="{{this.uuid}}">{{this.name}}</div>
</div>
</div>
{{/each}}
</div>
</div>
<div class="ancestry-section">
<h2>{{localize "Custom Ancestries"}}</h2>
<div class="ancestry-container">
{{#each customAncestries}}
<div class="ancestry-inner-container">
<div class="image-container">
<img src="{{this.img}}" class="{{#if this.selected}}selected{{else}}{{#if (eq ../selectedAncestries.length 2)}}disabled{{/if}}{{/if}}" data-action="selectAncestry" data-uuid="{{this.uuid}}" />
</div>
<div class="name-container">
<div data-action="viewItem" data-uuid="{{this.uuid}}">{{this.name}}</div>
</div>
</div>
{{/each}}
{{#if (eq customAncestries.length 0)}}No Custom Ancestries created in this world{{/if}}
</div>
</div>
<div class="ancestry-section">
<h2>{{localize "Ancestry Features"}}</h2>
<div class="ancestry-container">
{{#each ancestryFeatures}}
<div class="ancestry-inner-container">
<div class="image-container">
<img src="{{this.img}}" class="{{#if this.selected}}selected{{else}}{{#if (eq ../selectedFeatures.length 2)}}disabled{{/if}}{{/if}}" data-action="selectFeature" data-uuid="{{this.uuid}}" />
</div>
<div class="name-container">
<div data-action="viewItem" data-uuid="{{this.uuid}}">{{this.name}}</div>
</div>
</div>
{{/each}}
</div>
</div>
{{#if (eq this.selectedAncestries.length 2)}}
<div class="ancestry-section">
<h2>{{localize "Mixed Ancestry"}}</h2>
<div class="mixed-ancestry-container">
<div class="mixed-ancestry-name">
<div>{{localize "Ancestry Name"}}</div>
<input class="ancestry-name" type="text" value="{{this.ancestryInfo.name}}" />
</div>
<div class="mixed-ancestry-images">
{{#each selectedAncestries}}
<img class="{{#if (eq ../ancestryInfo.img this.img)}}selected{{/if}}" src="{{this.img}}" data-action="selectImage" data-img="{{this.img}}" />
{{/each}}
<div class="mixed-ancestry-image">
<img class="{{#if (eq this.ancestryInfo.img this.ancestryInfo.customImg)}}selected{{/if}}" src="{{this.ancestryInfo.customImg}}" data-action="selectImage" data-img="{{this.ancestryInfo.customImg}}" />
<i class="fa-solid fa-upload" data-action="editImage"></i>
</div>
</div>
</div>
<textarea class="ancestry-description">{{this.ancestryInfo.description}}</textarea>
</div>
{{/if}}
<footer class="flexrow">
<button class="flex1" data-action="saveAncestry" {{#if (not (eq selectedFeatures.length 2))}}disabled{{/if}}>Select Ancestry</button>
</footer>
</div>

View file

@ -0,0 +1,19 @@
<form class={{cssClass}} autocomplete="off">
<div class="form-group">
<label>{{localize "DAGGERHEART.Settings.Menu.Automation.HopeLabel"}}</label>
<div class="form-fields">
<input type="checkbox" name="{{settings.Hope}}" {{checked this.hope}} />
</div>
</div>
<div class="form-group">
<label>{{localize "DAGGERHEART.Settings.Menu.Automation.ActionPointsLabel"}}</label>
<div class="form-fields">
<input type="checkbox" name="{{settings.ActionPoints}}" {{checked this.actionPoints}} />
</div>
</div>
<footer class="flexrow">
<button type="submit">Save</button>
<button>Cancel</button>
</footer>
</form>

View file

@ -0,0 +1,29 @@
<div>
<div class="form-group">
<label><strong>Total Damage</strong></label>
<div class="form-fields">
<input type="text" value="{{this.rollString}}" disabled />
</div>
</div>
{{#each this.bonusDamage as |damage index|}}
<div class="form-group">
<label><strong>{{damage.description}}</strong></label>
<div class="form-fields">
<label>Enabled</label>
<input style="align-self: baseline;" type="checkbox" name="bonusDamage.{{index}}.initiallySelected" {{checked damage.initiallySelected}} />
{{#if (and damage.initiallySelected damage.hopeIncrease)}}
<label>Hope</label>
<div class="hope-container">
<i data-action="decreaseHopeUse" data-index="{{index}}" class="fa-solid fa-caret-left icon-button {{#if (eq damage.hopeUses 0)}}disabled{{/if}}"></i>
<div>{{damage.hopeUses}}</div>
<i data-action="increaseHopeUse" data-index="{{index}}" class="fa-solid fa-caret-right icon-button {{#if (eq ../hopeUsed ../hope)}}disabled{{/if}}"></i>
</div>
{{/if}}
</div>
</div>
{{/each}}
<footer>
<button data-action="rollDamage">Roll</button>
</footer>
</div>

View file

@ -0,0 +1,19 @@
<div>
<div class="downtime-container">
{{#each this.options as |option key|}}
<div class="activity-container">
<div class="activity-title">
<img class="activity-image {{#if (eq ../selectedMove.id key)}}selected{{/if}}" src="{{option.img}}" data-action="selectMove" data-move="{{key}}" />
<span class="activity-title-text">{{localize this.name}}</span>
</div>
<div class="activity-body">
{{localize this.description}}
</div>
</div>
{{/each}}
</div>
<footer class="flexrow">
<button data-action="takeMove" {{#if (not this.selectedMove)}}disabled{{/if}}>{{localize "DAGGERHEART.Application.DeathMove.TakeMove"}}</button>
<button data-action="close">{{localize "DAGGERHEART.Application.Cancel"}}</button>
</footer>
</div>

View file

@ -0,0 +1,28 @@
<div>
<div class="downtime-container">
{{#each this.options as |option key|}}
<div class="activity-container">
<div class="activity-title">
<img class="activity-image {{#if (eq ../selectedActivity.id key)}}selected{{/if}}" src="{{option.img}}" data-action="selectActivity" data-activity="{{key}}" />
<span class="activity-title-text">{{localize this.name}}</span>
</div>
<div class="activity-body">
{{localize this.description}}
</div>
</div>
{{/each}}
<div class="activity-container">
<div class="activity-title">
<img class="activity-image {{#if (eq selectedActivity this.customActivity)}}selected{{/if}}" src="{{this.customActivity.img}}" data-action="selectActivity" data-activity="{{this.customActivity.id}}" />
<input class="custom-name-input" type="text" name="name" value="{{this.customActivity.name}}" placeholder="{{localize this.customActivity.namePlaceholder}}" />
</div>
<div class="activity-body">
<textarea class="activity-text-area" name="description" placeholder="{{localize this.customActivity.placeholder}}">{{this.customActivity.description}}</textarea>
</div>
</div>
</div>
<footer class="flexrow">
<button data-action="takeDowntime" {{#if this.disabledDowntime}}disabled{{/if}}>{{localize "DAGGERHEART.Application.Downtime.TakeDowntime"}}</button>
<button data-action="close">{{localize "DAGGERHEART.Application.Cancel"}}</button>
</footer>
</div>

View file

@ -0,0 +1,13 @@
<form class={{cssClass}} autocomplete="off">
<div class="form-group">
<label>{{localize "DAGGERHEART.Settings.Menu.Homebrew.AbilityArrayLabel"}}</label>
<div class="form-fields">
<input type="text" name="{{settings.AbilityArray}}" value="{{this.abilityArray}}" />
</div>
</div>
<footer class="flexrow">
<button type="submit">Save</button>
<button>Cancel</button>
</footer>
</form>

View file

@ -0,0 +1,20 @@
<div class="flex-col">
<div class="levelup-title-container">Level {{activeLevel}}</div>
<div class="levelup-section">
{{#each data}}
{{> "systems/daggerheart/templates/views/parts/level.hbs" data=this }}
{{/each}}
{{!-- {{#each levelupConfig as |configData key|}}
{{> "systems/daggerheart/templates/views/parts/level.hbs" configData=configData levelData=(lookup ../levelData key) completedSelection=../completedSelection activeTier=../activeTier activeLevel=../activeLevel category=key }}
{{/each}} --}}
</div>
<footer>
{{#if (eq activeLevel changedLevel )}}
<button data-action="finishLevelup" {{#if (not completedSelection)}}disabled{{/if}}>{{localize "DAGGERHEART.Application.LevelUp.TakeLevelUp"}}</button>
{{else}}
<button data-action="advanceLevel" {{#if (not completedSelection)}}disabled{{/if}}>{{localize "DAGGERHEART.Application.LevelUp.AdvanceLevel" level=(add activeLevel 1)}}</button>
{{/if}}
<button data-action="close">{{localize "DAGGERHEART.Application.Cancel"}}</button>
</footer>
</div>

View file

@ -0,0 +1,37 @@
<div>
<section class="multiclass-container flexcol">
<h2 style="margin-top: 0;">{{localize "DAGGERHEART.Application.Multiclass.ClassSection.Title"}}</h2>
<div class="multiclass-class-choices">
{{#each classChoices}}
<div class="multiclass-class-choice {{#if (eq ../data.class.name this.name)}}selected{{/if}} {{#if (and ../data.class (not (eq ../data.class.name this.name)))}}inactive{{/if}}" data-action="selectClass" data-class="{{this.uuid}}">
<img src="{{this.img}}" />
<div>{{this.name}}</div>
</div>
{{/each}}
</div>
<h2 class="multiclass-category-title">{{localize "DAGGERHEART.Application.Multiclass.SubclassSection.Title"}}</h2>
<div class="multiclass-spaced-choices">
{{#each subclassChoices}}
<div class="multiclass-class-choice {{#if (eq ../data.subclass.name this.name)}}selected{{/if}} {{#if (and ../data.subclass (not (eq ../data.subclass.name this.name)))}}inactive{{/if}}" data-action="selectSubclass" data-subclass="{{this.uuid}}">
<img src="{{this.img}}" />
<div>{{this.name}}</div>
</div>
{{/each}}
</div>
<h2 class="multiclass-category-title">{{localize "DAGGERHEART.Application.Multiclass.DomainSection.Title"}}</h2>
<div class="multiclass-spaced-choices">
{{#each domainChoices}}
<div
class="multiclass-class-choice {{#if (eq ../data.domain.name this.name)}}selected{{/if}} {{#if (and ../data.domain (not (eq ../data.domain.name this.name)))}}inactive{{/if}} {{#if this.disabled}}disabled{{/if}}"
data-action="selectDomain" data-domain="{{this.id}}" title="{{#if this.disabled}}{{localize "DAGGERHEART.Application.Multiclass.AlreadyOwnedDomain"}}{{/if}}">
<img src="{{this.img}}" />
<div>{{this.name}}</div>
</div>
{{/each}}
</div>
</section>
<footer>
<button data-action="finish" {{#if this.disabledFinish}}disabled{{/if}}>{{localize "DAGGERHEART.Application.Multiclass.Finish"}}</button>
<button data-action="close">{{localize "DAGGERHEART.Application.Multiclass.Close"}}</button>
</footer>
</div>

View file

@ -0,0 +1,30 @@
<div class="npc-roll-dialog-container">
<div class="selection-container">
<div class="dice-container">
<div class="dice-inner-container">
<img src="icons/svg/d20-grey.svg" />
<div class="dice-number">{{this.nrDice}}</div>
</div>
<div class="flexcol" style="margin-right: 4px;">
<i class="fa-solid fa-chevron-up icon-button increase"></i>
<i class="fa-solid fa-chevron-down icon-button decrease"></i>
</div>
<div class="flexcol">
<div class="icon-button {{#if this.advantage}}active{{/if}} advantage">Adv</div>
<div class="icon-button {{#if (eq this.advantage false)}}active{{/if}} disadvantage">Dis</div>
</div>
</div>
<div class="roll-dialog-experience-container">
{{#each this.experiences as |experience key|}}
<div class="roll-dialog-chip {{#if experience.selected}}selected{{/if}}" data-action="selectExperience" data-key="{{key}}">
<span>{{experience.name}}</span>
<i class="fa-solid fa-circle-check"></i>
</div>
{{/each}}
</div>
</div>
<footer>
<button class="roll-button">Roll</button>
</footer>
</div>

View file

@ -0,0 +1,40 @@
<div class="levelup-container {{#if (not data.active)}}disabled{{/if}}">
<fieldset class="levelup-inner-container">
<legend class="levelup-legend">
{{data.label}}
</legend>
<div class="levelup-info">{{data.info}}</div>
<div class="levelup-pretext">{{data.pretext}}</div>
<div class="levelup-body">
{{#each data.choices as |choice choiceKey|}}
<div class="levelup-choice-row">
<div class="levelup-choice-row-inner">
{{#each choice.values as |value valueKey|}}
{{#times choice.cost}}
<div class="levelup-choice-input-container">
<input
type="checkbox"
data-action="toggleBox"
data-path="{{../path}}"
data-level-attribute="{{@../key}}"
{{checked ../selected}}
{{#if ../disabled}}disabled{{/if}}
/>
{{#if (lt (add this 1) ../../cost)}}
<i class="fa-solid fa-link"></i>
{{/if}}
{{#if ../locked}}
<i class="fa-solid fa-lock"></i>
{{/if}}
</div>
{{/times}}
{{/each}}
</div>
<div>{{localize choice.description}}</div>
</div>
{{/each}}
</div>
<div class="levelup-posttext">{{data.posttext}}</div>
</fieldset>
</div>

View file

@ -0,0 +1,44 @@
<form class={{cssClass}} autocomplete="off">
<div class="form-group">
<label>{{localize "DAGGERHEART.Settings.Menu.Range.EnabledLabel"}}</label>
<div class="form-fields reset-range-container">
<input style="height: 100%;" type="checkbox" name="enabled" {{checked this.range.enabled}} />
<button class="range-reset" style="flex: 0;"><i class="fa-solid fa-clock-rotate-left"></i></button>
</div>
</div>
<div class="form-group">
<label>{{localize "DAGGERHEART.Settings.Menu.Range.MeleeLabel"}}</label>
<div class="form-fields">
<input type="text" name="melee" value="{{this.range.melee}}" data-dtype="Number" {{#if (not this.range.enabled)}}disabled{{/if}} />
</div>
</div>
<div class="form-group">
<label>{{localize "DAGGERHEART.Settings.Menu.Range.VeryCloseLabel"}}</label>
<div class="form-fields">
<input type="text" name="veryClose" value="{{this.range.veryClose}}" data-dtype="Number" {{#if (not this.range.enabled)}}disabled{{/if}} />
</div>
</div>
<div class="form-group">
<label>{{localize "DAGGERHEART.Settings.Menu.Range.CloseLabel"}}</label>
<div class="form-fields">
<input type="text" name="close" value="{{this.range.close}}" data-dtype="Number" {{#if (not this.range.enabled)}}disabled{{/if}} />
</div>
</div>
<div class="form-group">
<label>{{localize "DAGGERHEART.Settings.Menu.Range.FarLabel"}}</label>
<div class="form-fields">
<input type="text" name="far" value="{{this.range.far}}" data-dtype="Number" {{#if (not this.range.enabled)}}disabled{{/if}} />
</div>
</div>
<div class="form-group">
<label>{{localize "DAGGERHEART.Settings.Menu.Range.VeryFarLabel"}}</label>
<div class="form-fields">
<input type="text" name="veryFar" value="{{this.range.veryFar}}" data-dtype="Number" {{#if (not this.range.enabled)}}disabled{{/if}} />
</div>
</div>
<footer class="flexrow">
<button class="save" {{#if this.disabled}}disabled{{/if}}>Save</button>
<button class="close">Cancel</button>
</footer>
</form>

View file

@ -0,0 +1,75 @@
<div>
<div class="roll-dialog-container">
<div class="flexcol">
<div class="roll-dialog-experience-container">
{{#each this.experiences}}
{{#if this.description}}
<div class="roll-dialog-chip {{#if this.selected}}selected{{/if}}" data-action="selectExperience" data-key="{{this.id}}">
<span>{{this.description}}</span>
<span>+{{this.value}}</span>
</div>
{{/if}}
{{/each}}
</div>
<div class="flexrow">
<button class="disadvantage flex1 {{#if this.advantage}}selected{{/if}}" data-action="setAdvantage">Advantage</button>
<button class="disadvantage flex1 {{#if this.disadvantage}}selected{{/if}}" data-action="setDisadvantage">Disadvantage</button>
</div>
{{!-- <div class="form-group">
<label>Advantage</label>
<div class="form-fields">
<select name="advantage" {{#if this.disadvantage}}disabled{{/if}}>
{{selectOptions this.diceOptions selected=this.advantage nameAttr="value" labelAttr="name" localize=true blank=""}}
</select>
</div>
</div>
<div class="form-group">
<label>Disadvantage</label>
<div class="form-fields">
<select name="disadvantage" {{#if this.advantage}}disabled{{/if}}>
{{selectOptions this.diceOptions selected=this.disadvantage nameAttr="value" labelAttr="name" localize=true blank=""}}
</select>
</div>
</div> --}}
{{#if (not this.isNpc)}}
<div class="form-group">
<label>Hope</label>
<div class="form-fields">
<select name="hope">
{{selectOptions this.diceOptions selected=this.hope nameAttr="value" labelAttr="name" localize=true}}
</select>
</div>
</div>
<div class="form-group">
<label>Fear</label>
<div class="form-fields">
<select name="fear">
{{selectOptions this.diceOptions selected=this.fear nameAttr="value" labelAttr="name" localize=true}}
</select>
</div>
</div>
{{/if}}
{{#each this.bonusDamage as |damage index|}}
<div class="form-group">
<label><strong>{{damage.description}}</strong></label>
<div class="form-fields">
<label>Enabled</label>
<input style="align-self: baseline;" type="checkbox" name="bonusDamage.{{index}}.initiallySelected" {{checked damage.initiallySelected}} />
{{#if (and damage.initiallySelected damage.hopeIncrease)}}
<label>Hope</label>
<div class="hope-container">
<i data-action="decreaseHopeUse" data-index="{{index}}" class="fa-solid fa-caret-left icon-button {{#if (eq damage.hopeUses 0)}}disabled{{/if}}"></i>
<div>{{damage.hopeUses}}</div>
<i data-action="increaseHopeUse" data-index="{{index}}" class="fa-solid fa-caret-right icon-button {{#if (eq ../hopeUsed ../hopeResource)}}disabled{{/if}}"></i>
</div>
{{/if}}
</div>
</div>
{{/each}}
</div>
<footer>
<button data-action="finish">Roll</button>
</footer>
</div>
</div>