mirror of
https://github.com/Foundryborne/daggerheart.git
synced 2026-01-12 03:31:07 +01:00
Refactor/84 data models structure (#131)
* - Move all DataModel item files to a new 'items' subfolder for better organization - Add _module.mjs file to simplify imports - Update all import paths - Rename class for use the new acronym DH * FIX: remove unnecessary import * FEAT: BaseDataItem class add TODO comments for future improvements FIX: Remove effect field on template FIX: remove unused DhpEffects file * FEAT: new FormulaField class FEAT: add getRollData on BaseDataItem Class FEAT: weapon FIX: remove inventoryWeapon field on Weapon Data Model * FEAT: add class prepareBaseData for domains * FEAT: new ForeignDocumentUUIDField FIX: Remove unnecessary fields FEAT: use ForeignDocumentUUIDField in the Item Class DataModel * FIX: remove wrong option in String Field * FIX: remove unused import * FIX: ADD htmlFields description in manifest * FIX: minor fixes * REFACTOR: rename folder `data/items` -> `data/item` REFACTOR: rename folder `data/messages` -> `data/chat-message`. * FIX: imports FIX: items sheet new paths FIX: ItemDataModelMetadata type jsdoc * FEAT: formatting code FIX: fix fields used FEAT: add jsdoc * 110 - Class Data Model (#111) * Added PreCreate/Create/Delete logic for Class/Subclass and set it as foreignUUID fields in PC * Moved methods into TypedModelData * Simplified Subclass * Fixed up data model and a basic placeholder template (#117) * 118 - adversary data model (#119) * Fixed datamodel and set up basic template in new style * Added in a temp attack button, because why not * Restored HitPoints counting up * 113 - Character Data Model (#114) * Improved Character datamodel * Removed additional unneccessary getters * Preliminary cleanup in the class sheet * Cleanup of 'pc' references * Corrected Duality rolling from Character * Fix to damage roll * Added a basic BaseDataActor data model * Gathered exports * getRollData recursion fix * Feature/112 items use action datamodel (#127) * Create new actions classes * actions types - attack roll * fixes before merge * First PR * Add daggerheart.css to gitignore * Update ToDo * Remove console log * Fixed chat /dr roll * Remove jQuery * Fixed so the different chat themes work again * Fixed duality roll buttons * Fix to advantage/disadvantage shortcut * Extand action to other item types * Roll fixes * Fixes to adversary rolls * resources * Fixed adversary dice --------- Co-authored-by: WBHarry <williambjrklund@gmail.com> * Feature/116-implementation-of-pseudo-documents (#125) * FEAT: add baseDataModel logic * FEAT: new PseudoDocumentsField FIX: BasePseudoDocument 's getEmbeddedDocument * FEAT: PseudoDocument class * FEAT: add TypedPseudoDocument REFACTOR: PreudoDocument FIX: Typos Bug * FIX: CONFIG types * FEAT: basic PseudoDocumentSheet * FIX: remove schema ADD: input of example --------- Co-authored-by: Joaquin Pereyra <joaquinpereyra98@users.noreply.github.com> Co-authored-by: WBHarry <williambjrklund@gmail.com> * Levelup Followup (#126) * Levelup applies bonuses to character * Added visualisation of domain card levels * Fixed domaincard level max for selections in a tier * A trait can now only be level up once within the same tier --------- Co-authored-by: Joaquin Pereyra <joaquinpereyra98@users.noreply.github.com> Co-authored-by: joaquinpereyra98 <24190917+joaquinpereyra98@users.noreply.github.com> Co-authored-by: Dapoulp <74197441+Dapoulp@users.noreply.github.com>
This commit is contained in:
parent
90bc2dc488
commit
187ee3e1bd
153 changed files with 5481 additions and 4829 deletions
|
|
@ -1,30 +1,32 @@
|
|||
<div class="dice-roll daggerheart chat roll" data-action="expandRoll">
|
||||
<div class="dice-flavor">{{localize "DAGGERHEART.Chat.AttackRoll.Title" attack=this.title}}</div>
|
||||
<div class="dice-result">
|
||||
<div class="dice-formula">{{roll}}</div>
|
||||
<div class="dice-formula">{{roll.formula}}</div>
|
||||
<div class="dice-tooltip">
|
||||
<div class="wrapper">
|
||||
<section class="tooltip-part">
|
||||
<div class="dice">
|
||||
<header class="part-header flexrow">
|
||||
<span class="part-formula">{{this.dice.rolls.length}}{{this.dice.type}}</span>
|
||||
<span class="part-total">{{this.dice.rollTotal}}</span>
|
||||
</header>
|
||||
<div class="flexrow">
|
||||
<ol class="dice-rolls">
|
||||
{{#each this.dice.rolls}}
|
||||
<li class="roll die {{../dice.type}} {{#if this.discarded}}discarded{{/if}} min">{{this.value}}</li>
|
||||
{{/each}}
|
||||
</ol>
|
||||
<div class="attack-roll-advantage-container">{{#if (eq this.advantageState 1)}}{{localize "DAGGERHEART.General.Advantage.Full"}}{{/if}}{{#if (eq this.advantageState 2)}}{{localize "DAGGERHEART.General.Disadvantage.Full"}}{{/if}}</div>
|
||||
</div>
|
||||
{{#each dice}}
|
||||
<header class="part-header flexrow">
|
||||
<span class="part-formula">{{number}}{{denomination}}</span>
|
||||
<span class="part-total">{{total}}</span>
|
||||
</header>
|
||||
<div class="flexrow">
|
||||
<ol class="dice-rolls">
|
||||
{{#each results}}
|
||||
<li class="roll die {{../denomination}}{{#if discarded}} discarded{{/if}} min">{{result}}</li>
|
||||
{{/each}}
|
||||
</ol>
|
||||
<div class="attack-roll-advantage-container">{{#if ../advantageState}}{{localize "DAGGERHEART.General.Advantage.Full"}}{{/if}}{{#if (eq ../advantageState false)}}{{localize "DAGGERHEART.General.Disadvantage.Full"}}{{/if}}</div>
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="dice-total">
|
||||
<div class="dice-total-value">{{this.total}}</div>
|
||||
<div class="dice-total-value">{{roll.total}}</div>
|
||||
</div>
|
||||
{{#if (gt targets.length 0)}}
|
||||
<div class="target-section">
|
||||
|
|
@ -39,7 +41,7 @@
|
|||
</div>
|
||||
{{/if}}
|
||||
<div class="flexrow">
|
||||
<button class="roll-damage-button" data-value="{{this.total.normal}}" data-damage="{{this.damage.value}}" data-damage-type="{{this.damage.type}}" {{#if this.damage.disabled}}disabled{{/if}}><span>Roll Damage</span></button>
|
||||
<button class="duality-action" data-value="{{roll.total}}" data-damage="{{damage.value}}" data-damage-type="{{damage.type}}"{{#if damage.disabled}} disabled{{/if}}><span>Roll Damage</span></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -1,22 +1,33 @@
|
|||
<div class="dice-roll daggerheart chat roll">
|
||||
<div class="dice-roll daggerheart chat roll" data-action="expandRoll">
|
||||
<div class="dice-result">
|
||||
<div class="dice-formula">{{roll}}</div>
|
||||
<div class="dice-formula">{{roll.formula}}</div>
|
||||
<div class="dice-tooltip">
|
||||
<ol class="dice-rolls">
|
||||
<div class="dice-hope-container">
|
||||
{{#each diceResults}}
|
||||
<li class="roll die d20 {{#if this.discarded}}discarded{{/if}}">{{this.value}}</li>
|
||||
{{/each}}
|
||||
{{#each dice}}
|
||||
<header class="part-header flexrow">
|
||||
<span class="part-formula">{{number}}{{denomination}}</span>
|
||||
<span class="part-total">{{total}}</span>
|
||||
</header>
|
||||
<div class="flexrow">
|
||||
<ol class="dice-rolls">
|
||||
{{#each results}}
|
||||
<li class="roll die {{../denomination}}{{#if discarded}} discarded{{/if}} min">{{result}}</li>
|
||||
{{/each}}
|
||||
</ol>
|
||||
<div class="attack-roll-advantage-container">{{#if ../advantageState}}{{localize "DAGGERHEART.General.Advantage.Full"}}{{/if}}{{#if (eq ../advantageState false)}}{{localize "DAGGERHEART.General.Disadvantage.Full"}}{{/if}}</div>
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
<div class="modifiers-container">
|
||||
{{#each modifiers}}
|
||||
<li class="modifier-value" data-value="{{this.value}}" title="{{this.title}}">{{this.label}}</li>
|
||||
<li class="modifier-value" data-value="{{value}}" title="{{title}}">{{label}}</li>
|
||||
{{/each}}
|
||||
</div>
|
||||
</ol>
|
||||
</div>
|
||||
<div class="dice-total">
|
||||
<div class="dice-total-value">{{total}}</div>
|
||||
<div class="dice-total-value">{{roll.total}}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -1,27 +1,27 @@
|
|||
{{#if this.colorful}}
|
||||
{{#if colorful}}
|
||||
<div class="daggerheart chat roll" data-action="expandRoll">
|
||||
<div class="duality-data">
|
||||
<div class="duality-title">
|
||||
<div>{{localize "DAGGERHEART.Chat.AttackRoll.Title" attack=this.title}}</div>
|
||||
<div>{{localize "DAGGERHEART.Chat.AttackRoll.Title" attack=title}}</div>
|
||||
</div>
|
||||
<div class="duality-modifiers">
|
||||
{{#each this.modifiers}}
|
||||
{{#each modifiers}}
|
||||
<div class="duality-modifier">
|
||||
{{this.label}}
|
||||
{{label}}
|
||||
</div>
|
||||
{{/each}}
|
||||
{{#if this.advantage.value}}
|
||||
{{#if advantageState}}
|
||||
<div class="duality-modifier">
|
||||
{{localize "DAGGERHEART.General.Advantage.Full"}}
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#if this.disadvantage.value}}
|
||||
{{#if (eq advantageState false)}}
|
||||
<div class="duality-modifier">
|
||||
{{localize "DAGGERHEART.General.Disadvantage.Full"}}
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
<div class="duality-line {{#if (not this.damage.value)}}simple{{/if}}">
|
||||
<div class="duality-line {{#if (not damage.value)}}simple{{/if}}">
|
||||
<div class="dice-outer-container">
|
||||
<div class="dice-container">
|
||||
<div class="dice-title">{{localize "DAGGERHEART.General.Hope"}}</div>
|
||||
|
|
@ -41,27 +41,27 @@
|
|||
<div class="dice-value">{{fear.value}}</div>
|
||||
</div>
|
||||
</div>
|
||||
{{#if this.advantage.value}}
|
||||
{{#if advantageState}}
|
||||
<div class="advantage-container advantage">
|
||||
<div class="dice-wrapper">
|
||||
<img class="dice" src="../icons/svg/d6-grey.svg"/>
|
||||
<div class="dice-value">{{this.advantage.value}}</div>
|
||||
<div class="dice-value">{{advantage.value}}</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#if this.disadvantage.value}}
|
||||
{{#if (eq advantageState false)}}
|
||||
<div class="advantage-container disadvantage">
|
||||
<div class="dice-wrapper">
|
||||
<img class="dice" src="../icons/svg/d6-grey.svg"/>
|
||||
<div class="dice-value">{{this.disadvantage.value}}</div>
|
||||
<div class="dice-value">{{advantage.value}}</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#if this.modifierTotal.value}}<div class="duality-modifier">{{this.modifierTotal.label}}</div>{{/if}}
|
||||
{{#if modifierTotal.value}}<div class="duality-modifier">{{modifierTotal.label}}</div>{{/if}}
|
||||
</div>
|
||||
{{#if (not this.damage.value)}}
|
||||
{{#if (not damage.value)}}
|
||||
<div class="duality-result">
|
||||
<div>{{this.total}} {{#if (eq dualityResult 1)}}With Hope{{else}}{{#if (eq dualityResult 2)}}With Fear{{else}}Critical Success{{/if}}{{/if}}</div>
|
||||
<div>{{roll.total}} {{#if (eq dualityResult 1)}}With Hope{{else}}{{#if (eq dualityResult 2)}}With Fear{{else}}Critical Success{{/if}}{{/if}}</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
|
@ -78,18 +78,18 @@
|
|||
{{/each}}
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#if this.damage.value}}
|
||||
{{#if damage.value}}
|
||||
<div class="duality-actions">
|
||||
<button class="duality-action" data-value="{{this.total}}" data-damage="{{this.damage.value}}" data-damage-type="{{this.damage.type}}" {{#if this.damage.disabled}}disabled{{/if}}><span>Roll Damage</span></button>
|
||||
<button class="duality-action" data-value="{{roll.total}}" data-damage="{{damage.value}}" data-damage-type="{{damage.type}}" {{#if damage.disabled}}disabled{{/if}}><span>Roll Damage</span></button>
|
||||
<div class="duality-result">
|
||||
<div>{{this.total}} {{#if (eq dualityResult 1)}}With Hope{{else}}{{#if (eq dualityResult 2)}}With Fear{{else}}Critical Success{{/if}}{{/if}}</div>
|
||||
<div>{{roll.total}} {{#if (eq dualityResult 1)}}With Hope{{else}}{{#if (eq dualityResult 2)}}With Fear{{else}}Critical Success{{/if}}{{/if}}</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{else}}
|
||||
<div class="dice-roll daggerheart chat roll" data-action="expandRoll">
|
||||
<div class="dice-flavor">{{localize "DAGGERHEART.Chat.AttackRoll.Title" attack=this.title}}</div>
|
||||
<div class="dice-flavor">{{localize "DAGGERHEART.Chat.AttackRoll.Title" attack=title}}</div>
|
||||
<div class="dice-result">
|
||||
<div class="dice-formula">{{roll}}</div>
|
||||
|
||||
|
|
@ -103,7 +103,7 @@
|
|||
|
|
||||
<span>1{{fear.dice}}</span>
|
||||
</span>
|
||||
<span class="part-total">{{this.diceTotal}}</span>
|
||||
<span class="part-total">{{diceTotal}}</span>
|
||||
</header>
|
||||
<div class="flexrow">
|
||||
<ol class="dice-rolls duality">
|
||||
|
|
@ -112,7 +112,7 @@
|
|||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
{{#if advantage.value}}
|
||||
{{#if (eq advantageState 1)}}
|
||||
<div class="dice">
|
||||
<header class="part-header flexrow">
|
||||
<span class="part-formula">
|
||||
|
|
@ -127,17 +127,17 @@
|
|||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#if disadvantage.value}}
|
||||
{{#if (eq advantageState 2)}}
|
||||
<div class="dice">
|
||||
<header class="part-header flexrow">
|
||||
<span class="part-formula">
|
||||
<span>1{{disadvantage.dice}}</span>
|
||||
<span>1{{advantage.dice}}</span>
|
||||
</span>
|
||||
<span class="part-total">{{disadvantage.value}}</span>
|
||||
<span class="part-total">{{advantage.value}}</span>
|
||||
</header>
|
||||
<div class="flexrow">
|
||||
<ol class="dice-rolls">
|
||||
<li class="roll die {{disadvantage.dice}} hope min">{{disadvantage.value}}</li>
|
||||
<li class="roll die {{advantage.dice}} hope min">{{advantage.value}}</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -148,7 +148,7 @@
|
|||
<div class="dice-total duality {{#if fear.discarded}}hope{{else}}{{#if hope.discarded}}fear{{else}}critical{{/if}}{{/if}}">
|
||||
<div class="dice-total-label">{{totalLabel}}</div>
|
||||
<div class="dice-total-value">
|
||||
{{this.total}}
|
||||
{{roll.total}}
|
||||
</div>
|
||||
</div>
|
||||
{{#if (gt targets.length 0)}}
|
||||
|
|
@ -164,7 +164,7 @@
|
|||
</div>
|
||||
{{/if}}
|
||||
<div class="dice-actions">
|
||||
<button class="duality-action" data-value="{{this.total}}" data-damage="{{this.damage.value}}" data-damage-type="{{this.damage.type}}" {{#if this.damage.disabled}}disabled{{/if}}><span>{{localize "DAGGERHEART.Chat.AttackRoll.RollDamage"}}</span></button>
|
||||
<button class="duality-action" data-value="{{roll.total}}" data-damage="{{damage.value}}" data-damage-type="{{damage.type}}" {{#if damage.disabled}}disabled{{/if}}><span>{{localize "DAGGERHEART.Chat.AttackRoll.RollDamage"}}</span></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<div class="dice-roll daggerheart chat roll" data-action="expandRoll">
|
||||
<div class="dice-flavor">{{this.title}}</div>
|
||||
<div class="dice-flavor">{{title}}</div>
|
||||
<div class="dice-result">
|
||||
<div class="dice-formula">{{this.roll}}</div>
|
||||
<div class="dice-formula">{{roll}}</div>
|
||||
|
||||
<div class="dice-tooltip">
|
||||
<div class="wrapper">
|
||||
|
|
@ -9,12 +9,12 @@
|
|||
{{#each dice}}
|
||||
<div class="dice">
|
||||
<header class="part-header flexrow">
|
||||
<span class="part-formula">{{this.rolls.length}}{{this.type}}</span>
|
||||
<span class="part-formula">{{rolls.length}}{{type}}</span>
|
||||
|
||||
<span class="part-total">{{this.rollTotal}}</span>
|
||||
<span class="part-total">{{this.total}}</span>
|
||||
</header>
|
||||
<ol class="dice-rolls">
|
||||
{{#each this.rolls}}
|
||||
{{#each rolls}}
|
||||
<li class="roll die {{../type}} min">{{this}}</li>
|
||||
{{/each}}
|
||||
</ol>
|
||||
|
|
@ -23,9 +23,9 @@
|
|||
</section>
|
||||
</div>
|
||||
</div>
|
||||
<div class="dice-total">{{this.damage.total}}</div>
|
||||
<div class="dice-total">{{damage.total}}</div>
|
||||
<div class="dice-actions">
|
||||
<button class="damage-button" data-target-hit="true" {{#if (eq this.targets.length 0)}}disabled{{/if}}>{{localize "DAGGERHEART.Chat.DamageRoll.DealDamageToTargets"}}</button>
|
||||
<button class="damage-button" data-target-hit="true" {{#if (eq targets.length 0)}}disabled{{/if}}>{{localize "DAGGERHEART.Chat.DamageRoll.DealDamageToTargets"}}</button>
|
||||
<button class="damage-button">{{localize "DAGGERHEART.Chat.DamageRoll.DealDamage"}}</button>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -1,27 +1,27 @@
|
|||
{{#if this.colorful}}
|
||||
{{#if colorful}}
|
||||
<div class="daggerheart chat roll" data-action="expandRoll">
|
||||
<div class="duality-data">
|
||||
<div class="duality-title">
|
||||
<div>{{this.title}}</div>
|
||||
<div>{{title}}</div>
|
||||
</div>
|
||||
<div class="duality-modifiers">
|
||||
{{#each this.modifiers}}
|
||||
{{#each modifiers}}
|
||||
<div class="duality-modifier">
|
||||
{{this.label}}
|
||||
{{label}}
|
||||
</div>
|
||||
{{/each}}
|
||||
{{#if this.advantage.value}}
|
||||
{{#if advantageState}}
|
||||
<div class="duality-modifier">
|
||||
{{localize "DAGGERHEART.General.Advantage.Full"}}
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#if this.disadvantage.value}}
|
||||
{{#if (eq advantageState false)}}
|
||||
<div class="duality-modifier">
|
||||
{{localize "DAGGERHEART.General.Disadvantage.Full"}}
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
<div class="duality-line {{#if (not this.damage.value)}}simple{{/if}}">
|
||||
<div class="duality-line {{#if (not damage.value)}}simple{{/if}}">
|
||||
<div class="dice-outer-container">
|
||||
<div class="dice-container">
|
||||
<div class="dice-title">{{localize "DAGGERHEART.General.Hope"}}</div>
|
||||
|
|
@ -41,32 +41,32 @@
|
|||
<div class="dice-value">{{fear.value}}</div>
|
||||
</div>
|
||||
</div>
|
||||
{{#if this.advantage.value}}
|
||||
{{#if advantageState}}
|
||||
<div class="advantage-container advantage">
|
||||
<div class="dice-wrapper">
|
||||
<img class="dice" src="../icons/svg/d6-grey.svg"/>
|
||||
<div class="dice-value">{{this.advantage.value}}</div>
|
||||
<div class="dice-value">{{advantage.value}}</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#if this.disadvantage.value}}
|
||||
{{#if (eq advantageState false)}}
|
||||
<div class="advantage-container disadvantage">
|
||||
<div class="dice-wrapper">
|
||||
<img class="dice" src="../icons/svg/d6-grey.svg"/>
|
||||
<div class="dice-value">{{this.disadvantage.value}}</div>
|
||||
<div class="dice-value">{{advantage.value}}</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#if this.modifierTotal.value}}<div class="duality-modifier">{{this.modifierTotal.label}}</div>{{/if}}
|
||||
{{#if modifierTotal.value}}<div class="duality-modifier">{{modifierTotal.label}}</div>{{/if}}
|
||||
</div>
|
||||
{{#if (not this.damage.value)}}
|
||||
{{#if (not damage.value)}}
|
||||
<div class="duality-result">
|
||||
<div>{{this.total}} {{#if (eq dualityResult 1)}}With Hope{{else}}{{#if (eq dualityResult 2)}}With Fear{{else}}Critical Success{{/if}}{{/if}}</div>
|
||||
<div>{{roll.total}} {{#if (eq dualityResult 1)}}With Hope{{else}}{{#if (eq dualityResult 2)}}With Fear{{else}}Critical Success{{/if}}{{/if}}</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
</div>
|
||||
{{#if this.damage.value}}
|
||||
{{#if damage.value}}
|
||||
<div class="duality-actions">
|
||||
<div></div>
|
||||
<div class="duality-result">
|
||||
|
|
@ -77,9 +77,9 @@
|
|||
</div>
|
||||
{{else}}
|
||||
<div class="dice-roll daggerheart chat roll" data-action="expandRoll">
|
||||
<div class="dice-flavor">{{this.title}}</div>
|
||||
<div class="dice-flavor">{{title}}</div>
|
||||
<div class="dice-result">
|
||||
<div class="dice-formula">{{roll}}</div>
|
||||
<div class="dice-formula">{{roll.formula}}</div>
|
||||
<div class="dice-tooltip">
|
||||
<div class="wrapper">
|
||||
<section class="tooltip-part">
|
||||
|
|
@ -90,7 +90,7 @@
|
|||
|
|
||||
<span>1{{fear.dice}}</span>
|
||||
</span>
|
||||
<span class="part-total">{{this.diceTotal}}</span>
|
||||
<span class="part-total">{{diceTotal}}</span>
|
||||
</header>
|
||||
<div class="flexrow">
|
||||
<ol class="dice-rolls duality">
|
||||
|
|
@ -99,7 +99,7 @@
|
|||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
{{#if advantage.value}}
|
||||
{{#if (eq advantageState 1)}}
|
||||
<div class="dice">
|
||||
<header class="part-header flexrow">
|
||||
<span class="part-formula">
|
||||
|
|
@ -114,17 +114,17 @@
|
|||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#if disadvantage.value}}
|
||||
{{#if (eq advantageState 2)}}
|
||||
<div class="dice">
|
||||
<header class="part-header flexrow">
|
||||
<span class="part-formula">
|
||||
<span>1{{disadvantage.dice}}</span>
|
||||
<span>1{{advantage.dice}}</span>
|
||||
</span>
|
||||
<span class="part-total">{{disadvantage.value}}</span>
|
||||
<span class="part-total">{{advantage.value}}</span>
|
||||
</header>
|
||||
<div class="flexrow">
|
||||
<ol class="dice-rolls">
|
||||
<li class="roll die {{disadvantage.dice}} hope min">{{disadvantage.value}}</li>
|
||||
<li class="roll die {{advantage.dice}} hope min">{{advantage.value}}</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -135,7 +135,7 @@
|
|||
<div class="dice-total duality {{#if fear.discarded}}hope{{else}}{{#if hope.discarded}}fear{{else}}critical{{/if}}{{/if}}">
|
||||
<div class="dice-total-label">{{totalLabel}}</div>
|
||||
<div class="dice-total-value">
|
||||
{{total}}
|
||||
{{roll.total}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
<div class="preview-empty-container">
|
||||
<div class="preview-empty-inner-container">
|
||||
<i class="preview-add-icon fa-solid fa-plus"></i>
|
||||
<div class="preview-empty-subtext">{{this.emptySubtext}}</div>
|
||||
<div class="preview-empty-subtext">{{> @partial-block }}</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
|
|
|||
|
|
@ -8,6 +8,8 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
{{formGroup settingFields.schema.fields.useCoins value=settingFields._source.useCoins localize=true }}
|
||||
|
||||
<footer class="form-footer">
|
||||
<button data-action="reset">
|
||||
<i class="fa-solid fa-arrow-rotate-left"></i>
|
||||
|
|
|
|||
9
templates/sheets/actors/adversary/header.hbs
Normal file
9
templates/sheets/actors/adversary/header.hbs
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
<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>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
17
templates/sheets/actors/adversary/information.hbs
Normal file
17
templates/sheets/actors/adversary/information.hbs
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
<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>
|
||||
61
templates/sheets/actors/adversary/main.hbs
Normal file
61
templates/sheets/actors/adversary/main.hbs
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
<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>
|
||||
|
||||
{{formGroup systemFields.attack.fields.name value=source.system.attack.name}}
|
||||
<button data-action="attackRoll">Attack</button>
|
||||
{{formGroup systemFields.attack.fields.modifier value=source.system.attack.modifier}}
|
||||
{{formGroup systemFields.attack.fields.range value=source.system.attack.range localize=true}}
|
||||
{{formGroup systemFields.attack.fields.damage.fields.value value=source.system.attack.damage.value}}
|
||||
{{formGroup systemFields.attack.fields.damage.fields.type value=source.system.attack.damage.type localize=true}}
|
||||
</fieldset>
|
||||
</div>
|
||||
</section>
|
||||
9
templates/sheets/actors/environment/header.hbs
Normal file
9
templates/sheets/actors/environment/header.hbs
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
<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.environment'}}</h3>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
16
templates/sheets/actors/environment/information.hbs
Normal file
16
templates/sheets/actors/environment/information.hbs
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
<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>
|
||||
37
templates/sheets/actors/environment/main.hbs
Normal file
37
templates/sheets/actors/environment/main.hbs
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
<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>
|
||||
|
|
@ -4,17 +4,17 @@
|
|||
<div class="class-info">
|
||||
<div class="flexrow">
|
||||
<img class="portrait" src="{{document.img}}" alt="{{document.name}}" data-edit="img">
|
||||
{{#if document.system.class}}
|
||||
{{#if document.system.class.value}}
|
||||
<div class="flexcol">
|
||||
<h2 class="class-title flex0" data-action="viewObject" data-value="{{document.system.class.uuid}}" data-tab="guide">
|
||||
<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.name}}</span>
|
||||
<span>{{document.system.class.value.name}}</span>
|
||||
<img class="domain-image" src="{{domains.second}}" />
|
||||
</h2>
|
||||
<span class="domain-title flex0">
|
||||
<span>{{document.system.class.system.domains.[0]}}</span>
|
||||
<span>{{document.system.class.value.system.domains.[0]}}</span>
|
||||
<span>and</span>
|
||||
<span>{{document.system.class.system.domains.[1]}}</span>
|
||||
<span>{{document.system.class.value.system.domains.[1]}}</span>
|
||||
</div>
|
||||
{{else}}
|
||||
<div class="flexcol">
|
||||
|
|
@ -47,7 +47,7 @@
|
|||
{{#if document.system.levelData.canLevelUp}}<div class="levelup-marker">*</div>{{/if}}
|
||||
</div>
|
||||
<img src="systems/daggerheart/assets/AttributeShield.svg" />
|
||||
<div class="level-title {{#if document.system.levelData.canLevelUp}}levelup{{/if}}">{{localize "DAGGERHEART.Sheets.PC.Level"}}</div>
|
||||
<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">
|
||||
|
|
@ -55,8 +55,8 @@
|
|||
<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.subclass.uuid) values=(join document.system.subclass.name) titleFontSize=14}}
|
||||
<button data-action="selectSubclass" class="option-select" {{#if (not ../document.system.class)}}disabled{{/if}}><i class="fa-solid fa-fw fa-search"></i></button>
|
||||
{{#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>
|
||||
|
|
@ -87,7 +87,7 @@
|
|||
</div>
|
||||
<div class="body-section flex3">
|
||||
{{> "systems/daggerheart/templates/sheets/parts/attributes.hbs" }}
|
||||
{{> "systems/daggerheart/templates/sheets/parts/weapons.hbs" weapons=document.system.equippedWeapons proficiency=document.system.proficiency.value }}
|
||||
{{> "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>
|
||||
|
|
@ -95,10 +95,10 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="tab domain-card-tab {{this.tabs.primary.loadout.cssClass}}" data-group="primary" data-tab="loadout">
|
||||
{{> "systems/daggerheart/templates/sheets/pc/sections/loadout.hbs" abilities=this.abilities actor=this.document config=this.config }}
|
||||
{{> "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/pc/sections/inventory.hbs" inventory=this.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%;">
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
<li class="item inventory-item">
|
||||
<div class="inventory-row" data-item-id="{{item.uuid}}">
|
||||
<div class="inventory-item-title-container">
|
||||
<div data-action="viewObject" data-value="{{item.uuid}}" class="inventory-item-title">
|
||||
<div data-action="useItem" data-value="{{item.uuid}}" class="inventory-item-title">
|
||||
<img src="{{item.img}}" />
|
||||
{{item.name}}
|
||||
</div>
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
<div class="card-row">
|
||||
<div class="heritage-card {{#if (not abilities.foundation.ancestry)}}outlined{{/if}}">
|
||||
{{#if abilities.foundation.ancestry}}
|
||||
{{> "systems/daggerheart/templates/sheets/pc/parts/heritageCard.hbs" card=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">
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
</div>
|
||||
<div class="heritage-card {{#if (not abilities.foundation.community)}}outlined{{/if}}">
|
||||
{{#if abilities.foundation.community}}
|
||||
{{> "systems/daggerheart/templates/sheets/pc/parts/heritageCard.hbs" card=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">
|
||||
|
|
@ -41,7 +41,7 @@
|
|||
<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/pc/parts/advancementCard.hbs" card=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">
|
||||
|
|
@ -54,7 +54,7 @@
|
|||
</div>
|
||||
<div class="heritage-card {{#if (not abilities.foundation.advancement.first)}}outlined{{/if}}">
|
||||
{{#if abilities.foundation.advancement.first}}
|
||||
{{> "systems/daggerheart/templates/sheets/pc/parts/advancementCard.hbs" card=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">
|
||||
|
|
@ -68,7 +68,7 @@
|
|||
</div>
|
||||
<div class="heritage-card {{#if (not abilities.foundation.advancement.second)}}outlined{{/if}}">
|
||||
{{#if abilities.foundation.advancement.second}}
|
||||
{{> "systems/daggerheart/templates/sheets/pc/parts/advancementCard.hbs" card=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">
|
||||
|
|
@ -9,7 +9,7 @@
|
|||
<a
|
||||
class='effect-control'
|
||||
data-action='editFeature'
|
||||
data-feature={{feature.uuid}}
|
||||
data-feature='{{feature.uuid}}'
|
||||
data-tooltip='{{localize "DAGGERHEART.Tooltip.openItemWorld"}}'
|
||||
>
|
||||
<i class="fa-solid fa-globe"></i>
|
||||
|
|
@ -17,7 +17,7 @@
|
|||
<a
|
||||
class='effect-control'
|
||||
data-action='deleteFeature'
|
||||
data-feature={{feature.uuid}}
|
||||
data-feature='{{feature.uuid}}'
|
||||
data-tooltip='{{localize "DAGGERHEART.Tooltip.delete"}}'
|
||||
>
|
||||
<i class='fas fa-trash'></i>
|
||||
|
|
|
|||
|
|
@ -6,6 +6,5 @@
|
|||
<fieldset>
|
||||
<legend>{{localize "DAGGERHEART.Sheets.Feature.Description"}}</legend>
|
||||
{{formInput systemFields.description value=source.system.description enriched=source.system.description localize=true toggled=true}}
|
||||
{{formField systemFields.effect value=source.system.effect enriched=source.system.effect toggled=true}}
|
||||
</fieldset>
|
||||
</section>
|
||||
|
|
@ -38,10 +38,10 @@
|
|||
<fieldset class="one-column drop-section primary-weapon-section">
|
||||
<legend>{{localize "DAGGERHEART.Sheets.Class.Guide.SuggestedPrimaryWeaponTitle"}}</legend>
|
||||
<div class="drop-section-body list-items">
|
||||
{{#if source.system.characterGuide.suggestedPrimaryWeapon}}
|
||||
<div class="suggested-item item-line" data-action="viewItem" data-item="{{source.system.characterGuide.suggestedPrimaryWeapon.uuid}}">
|
||||
<img class="image" src="{{source.system.characterGuide.suggestedPrimaryWeapon.img}}" />
|
||||
<span>{{source.system.characterGuide.suggestedPrimaryWeapon.name}}</span>
|
||||
{{#if document.system.characterGuide.suggestedPrimaryWeapon}}
|
||||
<div class="suggested-item item-line" data-action="viewItem" data-item="{{document.system.characterGuide.suggestedPrimaryWeapon.uuid}}">
|
||||
<img class="image" src="{{document.system.characterGuide.suggestedPrimaryWeapon.img}}" />
|
||||
<span>{{document.system.characterGuide.suggestedPrimaryWeapon.name}}</span>
|
||||
<div class="controls">
|
||||
<i data-action="removePrimaryWeapon" class="fa-solid fa-trash icon-button"></i>
|
||||
</div>
|
||||
|
|
@ -53,10 +53,10 @@
|
|||
<fieldset class="one-column drop-section secondary-weapon-section">
|
||||
<legend>{{localize "DAGGERHEART.Sheets.Class.Guide.SuggestedSecondaryWeaponTitle"}}</legend>
|
||||
<div class="drop-section-body list-items">
|
||||
{{#if source.system.characterGuide.suggestedSecondaryWeapon}}
|
||||
<div class="suggested-item item-line" data-action="viewItem" data-item="{{source.system.characterGuide.suggestedSecondaryWeapon.uuid}}">
|
||||
<img class="image" src="{{source.system.characterGuide.suggestedSecondaryWeapon.img}}" />
|
||||
<span>{{source.system.characterGuide.suggestedSecondaryWeapon.name}}</span>
|
||||
{{#if document.system.characterGuide.suggestedSecondaryWeapon}}
|
||||
<div class="suggested-item item-line" data-action="viewItem" data-item="{{system.system.characterGuide.suggestedSecondaryWeapon.uuid}}">
|
||||
<img class="image" src="{{document.system.characterGuide.suggestedSecondaryWeapon.img}}" />
|
||||
<span>{{document.system.characterGuide.suggestedSecondaryWeapon.name}}</span>
|
||||
<div class="controls">
|
||||
<i data-action="removeSecondaryWeapon" class="fa-solid fa-trash icon-button"></i>
|
||||
</div>
|
||||
|
|
@ -68,10 +68,10 @@
|
|||
<fieldset class="one-column drop-section armor-section">
|
||||
<legend>{{localize "DAGGERHEART.Sheets.Class.Guide.SuggestedArmorTitle"}}</legend>
|
||||
<div class="drop-section-body list-items">
|
||||
{{#if source.system.characterGuide.suggestedArmor}}
|
||||
<div class="suggested-item item-line" data-action="viewItem" data-item="{{source.system.characterGuide.suggestedArmor.uuid}}">
|
||||
<img class="image" src="{{source.system.characterGuide.suggestedArmor.img}}" />
|
||||
<span>{{source.system.characterGuide.suggestedArmor.name}}</span>
|
||||
{{#if document.system.characterGuide.suggestedArmor}}
|
||||
<div class="suggested-item item-line" data-action="viewItem" data-item="{{document.system.characterGuide.suggestedArmor.uuid}}">
|
||||
<img class="image" src="{{document.system.characterGuide.suggestedArmor.img}}" />
|
||||
<span>{{document.system.characterGuide.suggestedArmor.name}}</span>
|
||||
<div class="controls">
|
||||
<i data-action="removeArmor" class="fa-solid fa-trash icon-button"></i>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -5,22 +5,16 @@
|
|||
>
|
||||
<fieldset>
|
||||
<legend>{{localize "DAGGERHEART.Sheets.Subclass.Tabs.Foundation"}}</legend>
|
||||
{{#each source.system.foundationFeature.abilities as |feature key|}}
|
||||
{{> 'systems/daggerheart/templates/sheets/global/partials/feature-section-item.hbs' feature=feature}}
|
||||
{{/each}}
|
||||
{{> 'systems/daggerheart/templates/sheets/global/partials/feature-section-item.hbs' feature=source.system.foundationFeature}}
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend>{{localize "DAGGERHEART.Sheets.Subclass.Tabs.Specialization"}}</legend>
|
||||
{{#each source.system.specializationFeature.abilities as |feature key|}}
|
||||
{{> 'systems/daggerheart/templates/sheets/global/partials/feature-section-item.hbs' feature=feature}}
|
||||
{{/each}}
|
||||
{{> 'systems/daggerheart/templates/sheets/global/partials/feature-section-item.hbs' feature=source.system.specializationFeature}}
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend>{{localize "DAGGERHEART.Sheets.Subclass.Tabs.Mastery"}}</legend>
|
||||
{{#each source.system.masteryFeature.abilities as |feature key|}}
|
||||
{{> 'systems/daggerheart/templates/sheets/global/partials/feature-section-item.hbs' feature=feature}}
|
||||
{{/each}}
|
||||
{{> 'systems/daggerheart/templates/sheets/global/partials/feature-section-item.hbs' feature=source.system.masteryFeature}}
|
||||
</fieldset>
|
||||
</section>
|
||||
|
|
@ -7,19 +7,19 @@
|
|||
{{#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.value}}" src="icons/svg/d12-grey.svg" />
|
||||
<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.base 0)}} negative{{/if}}{{#if (and (not attribute.base) (not ../abilityScoresFinished))}} unselected{{/if}}" data-attribute="{{key}}">
|
||||
{{#if (not (eq attribute.base 0))}}<option value="">{{attribute.base}}</option>{{/if}}
|
||||
<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.value}}"{{#if (eq option.value attribute.base)}} selected="selected"{{/if}}>{{option.name}}</option>
|
||||
<option value="{{option.total}}">{{option.name}}</option>
|
||||
{{/each}}
|
||||
</select>
|
||||
{{else}}
|
||||
<div class="attribute-text {{#if (lt attribute.value 0)}}negative{{/if}}">{{attribute.value}}</div>
|
||||
<div class="attribute-text {{#if (lt attribute.total 0)}}negative{{/if}}">{{attribute.total}}</div>
|
||||
{{/if}}
|
||||
<img src="systems/daggerheart/assets/AttributeShield.svg" />
|
||||
<div>
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
<div class="defense-row">
|
||||
<div class="defense-section">
|
||||
<div class="defense-container">
|
||||
<div class="defense-value">{{document.system.evasion.value}}</div>
|
||||
<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>
|
||||
|
|
@ -16,16 +16,18 @@
|
|||
<img src="systems/daggerheart/assets/AttributeShield.svg" />
|
||||
<div class="defense-banner">{{localize "DAGGERHEART.Sheets.PC.Defense.Armor"}}</div>
|
||||
</div>
|
||||
<div class="armor-marks">
|
||||
{{#times (subtract 12 document.system.armorMarks.max)}}
|
||||
<input class="mark disabled-mark" type="checkbox" disabled />
|
||||
{{/times}}
|
||||
{{#times document.system.armorMarks.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 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>
|
||||
|
|
@ -1,12 +1,12 @@
|
|||
<fieldset class="left-main-container experience-container">
|
||||
<legend class="legend">{{localize "DAGGERHEART.Sheets.PC.Experience.Title"}}</legend>
|
||||
{{#each document.system.experiences as |experience index|}}
|
||||
{{#each document.system.experiences as |experience id|}}
|
||||
<div class="experience-row">
|
||||
<input class="experience-description" data-index={{index}} value="{{experience.description}}" type="text" />
|
||||
<div class="experience-value">{{experience.value}}</div>
|
||||
<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 document.system.experiences.length)}}
|
||||
{{#times (subtract 5 (length document.system.experiences))}}
|
||||
<div class="experience-row">
|
||||
<input type="text" class="disabled-experience" disabled />
|
||||
<div class="experience-value empty"></div>
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
<fieldset class="left-main-container" style="flex: 1;">
|
||||
<legend class="legend">
|
||||
{{#if this.document.system.class}}
|
||||
{{#if this.document.system.multiclass}}
|
||||
{{#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}} {{localize "DAGGERHEART.General.Features"}}</span>
|
||||
/
|
||||
<span class="class-feature-selectable {{#if (not this.multiclass)}}inactive{{/if}}" data-action="selectFeatureSet" data-multiclass="true">{{this.document.system.multiclass.name}} {{localize "DAGGERHEART.General.Features"}}</span>
|
||||
{{else}}
|
||||
<span>{{this.document.system.class.name}} {{localize "DAGGERHEART.General.Features"}}</span>
|
||||
<span>{{this.document.system.class.value.name}} {{localize "DAGGERHEART.General.Features"}}</span>
|
||||
{{/if}}
|
||||
{{else}}
|
||||
<span>{{localize "DAGGERHEART.Sheets.PC.Features.Title"}}</span>
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@
|
|||
<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 (lt resources.hitPoints.value document.system.resources.hitPoints.max)}}disabled{{/if}}" title="{{localize "DAGGERHEART.Sheets.PC.Health.DeathMoveTooltip"}}"></i>
|
||||
<i data-action="makeDeathMove" class="fas fa-skull death-save {{#if (lt resources.hitPoints.value document.system.resources.hitPoints.maxTotal)}}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">
|
||||
|
|
@ -30,22 +30,22 @@
|
|||
</div>
|
||||
<div class="flexcol">
|
||||
<div class="flexrow" style="flex-wrap: nowrap;">
|
||||
{{#times document.system.resources.hitPoints.max}}
|
||||
{{#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.max)}}
|
||||
{{#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.max}}
|
||||
{{#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.max)}}
|
||||
{{#times (subtract 12 document.system.resources.stress.maxTotal)}}
|
||||
<input class="resource-box disabled" type="checkbox" disabled />
|
||||
{{/times}}
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -5,45 +5,45 @@
|
|||
<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 this)}}marked{{/if}}"></i>
|
||||
<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 weapons.burden "oneHanded") (eq weapons.burden "twoHanded"))}}active{{/if}}"></i>
|
||||
<i class="fa-solid fa-hand weapons-burden-icon right {{#if (eq weapons.burden "twoHanded")}}active{{/if}}"></i>
|
||||
<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 weapons.primary}}
|
||||
<img class="damage-roll" data-action="attackRoll" data-weapon="{{weapons.primary.uuid}}" src="icons/svg/d12-grey.svg" />
|
||||
{{#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="{{weapons.primary.name}}" type="text" />
|
||||
<input value="{{localize weapons.primary.trait}}" type="text" />
|
||||
<input value="{{localize weapons.primary.range.label}}" type="text" />
|
||||
<input value="{{weapons.primary.damage.value}} {{#if weapons.primary}}({{localize weapons.primary.damage.type.abbreviation}}){{/if}}" type="text" />
|
||||
<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 weapons.primary.feature.label}} {{#if weapons.primary.feature}}({{localize weapons.primary.feature.description}}){{/if}}" type="text" />
|
||||
<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 weapons.secondary}}
|
||||
<img class="damage-roll" data-action="damageRoll" data-value="{{weapons.secondary.damage.value}}" src="icons/svg/d12-grey.svg" />
|
||||
{{#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="{{weapons.secondary.name}}" type="text" />
|
||||
<input value="{{localize weapons.secondary.trait}}" type="text" />
|
||||
<input value="{{localize weapons.secondary.range.label}}" type="text" />
|
||||
<input value="{{weapons.secondary.damage.label}} {{#if weapons.secondary}}({{localize weapons.secondary.damage.type.abbreviation}}){{/if}}" type="text" />
|
||||
<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 weapons.secondary.feature.name}} {{#if weapons.secondary.feature}}({{localize weapons.secondary.feature.description}}){{/if}}" style="text-overflow: ellipsis;" type="text" />
|
||||
<input value="{{localize secondaryWeapon.feature.name}} {{#if secondaryWeapon.feature}}({{localize secondaryWeapon.feature.description}}){{/if}}" style="text-overflow: ellipsis;" type="text" />
|
||||
</div>
|
||||
</fieldset>
|
||||
3
templates/sheets/pseudo-documents/header.hbs
Normal file
3
templates/sheets/pseudo-documents/header.hbs
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
<header>
|
||||
<input type="text" name="name" value="{{document.name}}">
|
||||
</header>
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
<div>
|
||||
<header>
|
||||
{{formField fields.name value=source.name label="Name" name="name" rootId=partId}}
|
||||
{{!-- {{formField fields.name value=source.name label="Name" name="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}}">
|
||||
|
|
@ -11,51 +11,30 @@
|
|||
</nav>
|
||||
</header>
|
||||
<section>
|
||||
<div class="tab {{this.tabs.effects.cssClass}}" data-group="primary" data-tab="effects">
|
||||
<div class="tab {{this.tabs.base.cssClass}}" data-group="primary" data-tab="base">
|
||||
<fieldset class="action-category">
|
||||
<legend class="action-category-label" data-action="toggleSection" data-section="damage">
|
||||
<div>Damage</div>
|
||||
<legend class="action-category-label" data-action="toggleSection" data-section="identity">
|
||||
<div>Identity</div>
|
||||
</legend>
|
||||
|
||||
<div class="action-category-data open">
|
||||
{{formField fields.damage.fields.type value=source.damage.type label="Damage Type" name="damage.type" rootId=partId localize=true}}
|
||||
{{formField fields.damage.fields.value value=source.damage.value label="Damage" name="damage.value" rootId=partId localize=true}}
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset class="action-category">
|
||||
<legend class="action-category-label" data-action="toggleSection" data-section="healing">
|
||||
<div>Healing</div>
|
||||
</legend>
|
||||
|
||||
<div class="action-category-data open ">
|
||||
{{formField fields.healing.fields.type value=source.healing.type label="Healing Type" name="healing.type" rootId=partId localize=true}}
|
||||
{{formField fields.healing.fields.value value=source.healing.value label="Healing" name="healing.value" rootId=partId localize=true}}
|
||||
{{formField fields.name value=source.name label="Name" name="name"}}
|
||||
{{formField fields.img value=source.img label="Icon" name="img"}}
|
||||
{{formField fields.actionType value=source.actionType label="Type" name="actionType" localize=true}}
|
||||
</div>
|
||||
</fieldset>
|
||||
{{#if fields.roll}}{{> 'systems/daggerheart/templates/views/actionTypes/roll.hbs' fields=fields.roll.fields source=source.roll}}{{/if}}
|
||||
</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>
|
||||
</legend>
|
||||
|
||||
<div class="action-category-data open ">
|
||||
{{formField fields.cost.fields.type value=source.cost.type label="Cost Type" name="cost.type" rootId=partId}}
|
||||
{{formField fields.cost.fields.value value=source.cost.value label="Value" name="cost.value" rootId=partId}}
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
{{formField fields.target.fields.type value=source.target.type label="Target Type" name="target.type" rootId=partId}}
|
||||
<div class="tab {{this.tabs.config.cssClass}}" data-group="primary" data-tab="config">
|
||||
{{> '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}}
|
||||
{{#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.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 class="tab {{this.tabs.effect.cssClass}}" data-group="primary" data-tab="effect">
|
||||
{{#if fields.damage}}{{> 'systems/daggerheart/templates/views/actionTypes/damage.hbs' fields=fields.damage.fields.parts.element.fields source=source.damage}}{{/if}}
|
||||
{{#if fields.healing}}{{> 'systems/daggerheart/templates/views/actionTypes/healing.hbs' fields=fields.healing.fields source=source.healing}}{{/if}}
|
||||
{{#if fields.resource}}{{> 'systems/daggerheart/templates/views/actionTypes/resource.hbs' fields=fields.resource.fields source=source.resource}}{{/if}}
|
||||
{{#if fields.documentUUID}}{{> 'systems/daggerheart/templates/views/actionTypes/uuid.hbs' fields=fields.documentUUID source=source.documentUUID}}{{/if}}
|
||||
{{#if fields.effects}}{{> 'systems/daggerheart/templates/views/actionTypes/effect.hbs'}}{{/if}}
|
||||
</div>
|
||||
</section>
|
||||
<button type="submit">Save</button>
|
||||
</div>
|
||||
13
templates/views/actionSelect.hbs
Normal file
13
templates/views/actionSelect.hbs
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
<form id="item-action-select">
|
||||
<ul class="unlist list-select">
|
||||
{{#each actions}}
|
||||
<li>
|
||||
<label>
|
||||
<dh-icon><img src="{{ img }}"></dh-icon>
|
||||
<span>{{ name }}</span>
|
||||
<input type="radio" name="actionId" value="{{_id}}" {{#if (eq @index 0)}}checked{{/if}}>
|
||||
</label>
|
||||
</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
</form>
|
||||
13
templates/views/actionType.hbs
Normal file
13
templates/views/actionType.hbs
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
<form id="action-type-select">
|
||||
<ul class="unlist list-select">
|
||||
{{#each types}}
|
||||
<li>
|
||||
<label>
|
||||
<dh-icon class="dh-icon fas {{icon}}"></dh-icon>
|
||||
<span>{{localize name}}</span>
|
||||
<input type="radio" name="type" value="{{id}}" {{#if (eq @index 0)}}checked{{/if}}>
|
||||
</label>
|
||||
</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
</form>
|
||||
21
templates/views/actionTypes/cost.hbs
Normal file
21
templates/views/actionTypes/cost.hbs
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
<fieldset class="action-category">
|
||||
<legend class="action-category-label" data-action="toggleSection" data-section="cost">
|
||||
<div>Cost</div>
|
||||
</legend>
|
||||
<div class="action-category-data open" data-key="cost">
|
||||
<div class="fas fa-plus icon-button" data-action="addElement"></div>
|
||||
{{#each source as |cost index|}}
|
||||
<fieldset>
|
||||
<div class="multi-display">
|
||||
{{formField ../fields.type label="Resource" value=cost.type name=(concat "cost." index ".type") localize=true}}
|
||||
{{formField ../fields.value label="Value" value=cost.value name=(concat "cost." index ".value")}}
|
||||
</div>
|
||||
<div class="multi-display">
|
||||
{{formField ../fields.scalable label="Scalable" value=cost.scalable name=(concat "cost." index ".scalable")}}
|
||||
{{formField ../fields.step label="Step" value=cost.step name=(concat "cost." index ".step")}}
|
||||
</div>
|
||||
<div class="fas fa-trash" data-action="removeElement" data-index="{{index}}"></div>
|
||||
</fieldset>
|
||||
{{/each}}
|
||||
</div>
|
||||
</fieldset>
|
||||
36
templates/views/actionTypes/damage.hbs
Normal file
36
templates/views/actionTypes/damage.hbs
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
|
||||
<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">
|
||||
<div class="fas fa-plus icon-button" data-action="addDamage"></div>
|
||||
{{#if @root.hasBaseDamage}}
|
||||
<div>
|
||||
{{!-- <input type="checkbox" data-action="addBaseDamage"{{#if @root.hasBaseDamage}} checked{{/if}}> --}}
|
||||
{{formField @root.fields.damage.fields.includeBase value=@root.source.damage.includeBase label="Include Item Damage" name="damage.includeBase" }}
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#each source.parts as |dmg index|}}
|
||||
{{#with (@root.getRealIndex index) as | realIndex |}}
|
||||
<fieldset{{#if dmg.base}} disabled{{/if}}>
|
||||
{{#unless dmg.base}}
|
||||
{{formField ../../fields.custom.fields.enabled value=dmg.custom.enabled name=(concat "damage.parts." realIndex ".custom.enabled")}}
|
||||
{{/unless}}
|
||||
{{#if dmg.custom.enabled}}
|
||||
{{formField ../../fields.custom.fields.formula value=dmg.custom.formula name=(concat "damage.parts." realIndex ".custom.formula") localize=true}}
|
||||
{{else}}
|
||||
<div class="multi-display">
|
||||
{{formField ../../fields.multiplier value=dmg.multiplier name=(concat "damage.parts." realIndex ".multiplier") localize=true}}
|
||||
{{formField ../../fields.dice value=dmg.dice name=(concat "damage.parts." realIndex ".dice")}}
|
||||
{{formField ../../fields.bonus value=dmg.bonus name=(concat "damage.parts." realIndex ".bonus") localize=true}}
|
||||
</div>
|
||||
{{/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}}
|
||||
{{/each}}
|
||||
</div>
|
||||
</fieldset>
|
||||
19
templates/views/actionTypes/effect.hbs
Normal file
19
templates/views/actionTypes/effect.hbs
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
<fieldset class="action-category">
|
||||
<legend class="action-category-label" data-action="toggleSection" data-section="effects">
|
||||
<div>Effects</div>
|
||||
</legend>
|
||||
<div class="action-category-data open" data-key="effects">
|
||||
<div class="fas fa-plus icon-button" data-action="addEffect"></div>
|
||||
{{#each @root.effects as | effect index | }}
|
||||
<fieldset>
|
||||
{{!-- <div class="multi-display"> --}}
|
||||
<div class="form-group">
|
||||
<img src="{{img}}">
|
||||
<label data-action="editEffect">{{name}}</label>
|
||||
<div class="fas fa-trash" data-action="removeEffect" data-index="{{index}}"></div>
|
||||
</div>
|
||||
{{!-- </div> --}}
|
||||
</fieldset>
|
||||
{{/each}}
|
||||
</div>
|
||||
</fieldset>
|
||||
21
templates/views/actionTypes/healing.hbs
Normal file
21
templates/views/actionTypes/healing.hbs
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
|
||||
<fieldset class="action-category">
|
||||
<legend class="action-category-label" data-action="toggleSection" data-section="effects">
|
||||
<div>Healing</div>
|
||||
</legend>
|
||||
<div class="action-category-data open">
|
||||
<fieldset>
|
||||
{{formField fields.type value=source.type name="healing.type" localize=true}}
|
||||
<div class="multi-display">
|
||||
{{formField fields.value.fields.custom.fields.enabled value=source.value.custom.enabled name="healing.value.custom.enabled"}}
|
||||
{{#if source.value.custom.enabled}}
|
||||
{{formField fields.value.fields.custom.fields.formula value=source.value.custom.formula name="healing.value.custom.formula" localize=true}}
|
||||
{{else}}
|
||||
{{formField fields.value.fields.multiplier value=source.value.multiplier name="healing.value.multiplier" localize=true}}
|
||||
{{formField fields.value.fields.dice value=source.value.dice name="healing.value.dice"}}
|
||||
{{formField fields.value.fields.bonus value=source.value.bonus name="healing.value.bonus" localize=true}}
|
||||
{{/if}}
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
</fieldset>
|
||||
13
templates/views/actionTypes/range-target.hbs
Normal file
13
templates/views/actionTypes/range-target.hbs
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
<fieldset class="action-category">
|
||||
<legend class="action-category-label" data-action="toggleSection" data-section="range">
|
||||
<div>Range{{#if fields.target}} & Target{{/if}}</div>
|
||||
</legend>
|
||||
<div class="action-category-data open">
|
||||
{{formField fields.range value=source.range label="Range" name="range" localize=true}}
|
||||
</div>
|
||||
{{#if fields.target}}
|
||||
<div class="action-category-data open">
|
||||
{{formField fields.target.type value=source.target.type label="Target" name="target.type" localize=true}}
|
||||
</div>
|
||||
{{/if}}
|
||||
</fieldset>
|
||||
14
templates/views/actionTypes/resource.hbs
Normal file
14
templates/views/actionTypes/resource.hbs
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
|
||||
<fieldset class="action-category">
|
||||
<legend class="action-category-label" data-action="toggleSection" data-section="effects">
|
||||
<div>Resource</div>
|
||||
</legend>
|
||||
<div class="action-category-data open">
|
||||
<fieldset>
|
||||
<div class="multi-display">
|
||||
{{formField fields.type value=source.type name="resource.type" localize=true}}
|
||||
{{formField fields.value value=source.value name="resource.value"}}
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
</fieldset>
|
||||
10
templates/views/actionTypes/roll.hbs
Normal file
10
templates/views/actionTypes/roll.hbs
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
<fieldset class="action-category">
|
||||
<legend class="action-category-label" data-action="toggleSection" data-section="roll">
|
||||
<div>Roll</div>
|
||||
</legend>
|
||||
<div class="action-category-data open">
|
||||
{{formField fields.type label="Type" name="roll.type" value=source.type localize=true}}
|
||||
{{formField fields.trait label="Trait" name="roll.trait" value=source.trait localize=true}}
|
||||
{{formField fields.difficulty label="Difficulty" name="roll.difficulty" value=source.difficulty}}
|
||||
</div>
|
||||
</fieldset>
|
||||
8
templates/views/actionTypes/target.hbs
Normal file
8
templates/views/actionTypes/target.hbs
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
<fieldset class="action-category">
|
||||
<legend class="action-category-label" data-action="toggleSection" data-section="target">
|
||||
<div>Target</div>
|
||||
</legend>
|
||||
<div class="action-category-data open">
|
||||
{{formField targetField.type label="Target" name="target" rootId=partId localize=true}}
|
||||
</div>
|
||||
</fieldset>
|
||||
12
templates/views/actionTypes/uses.hbs
Normal file
12
templates/views/actionTypes/uses.hbs
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
<fieldset class="action-category">
|
||||
<legend class="action-category-label" data-action="toggleSection" data-section="uses">
|
||||
<div>Uses</div>
|
||||
</legend>
|
||||
<div class="action-category-data open">
|
||||
<div class="multi-display">
|
||||
{{formField fields.value label="Value" value=source.value name="uses.value" rootId=partId}}
|
||||
{{formField fields.max label="Max" value=source.max name="uses.max" rootId=partId}}
|
||||
</div>
|
||||
{{formField fields.recovery label="Recovery" value=source.recovery name="uses.recovery" rootId=partId localize=true}}
|
||||
</div>
|
||||
</fieldset>
|
||||
9
templates/views/actionTypes/uuid.hbs
Normal file
9
templates/views/actionTypes/uuid.hbs
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
|
||||
<fieldset class="action-category">
|
||||
<legend class="action-category-label" data-action="toggleSection" data-section="effects">
|
||||
<div>Macro</div>
|
||||
</legend>
|
||||
<div class="action-category-data open">
|
||||
{{formInput fields value=source name="documentUUID" placeholder=fields.options.placeholder}}
|
||||
</div>
|
||||
</fieldset>
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
<div class="component dh-style card-preview-container selectable {{#if this.disabled}}disabled{{/if}}" data-action="selectPreview" data-path="{{this.path}}" data-uuid="{{this.uuid}}" {{#if selected}}data-selected="true"{{/if}}>
|
||||
<div class="component dh-style card-preview-container selectable {{#if this.disabled}}disabled{{/if}}" data-action="selectPreview" data-path="{{this.path}}" data-uuid="{{this.uuid}}" data-is-multiclass="{{this.isMulticlass}}" data-feature-state="{{this.featureState}}" {{#if selected}}data-selected="true"{{/if}}>
|
||||
<div class="preview-image-outer-container">
|
||||
<img class="preview-image-container" src="{{this.img}}" />
|
||||
{{#if this.selected}}
|
||||
|
|
@ -7,5 +7,8 @@
|
|||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
<div class="preview-text-container">{{this.name}}</div>
|
||||
<div class="preview-text-container">
|
||||
<div>{{this.name}}</div>
|
||||
<strong>{{this.featureLabel}}</strong>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -51,7 +51,11 @@
|
|||
|
||||
<div class="levelup-card-selection domain-cards">
|
||||
{{#each this.domainCards}}
|
||||
{{> "systems/daggerheart/templates/components/card-preview.hbs" this }}
|
||||
{{#> "systems/daggerheart/templates/components/card-preview.hbs" this }}
|
||||
{{#each this.emptySubtexts}}
|
||||
<div>{{this}}</div>
|
||||
{{/each}}
|
||||
{{/"systems/daggerheart/templates/components/card-preview.hbs"}}
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -63,7 +67,7 @@
|
|||
|
||||
<div class="levelup-card-selection subclass-cards">
|
||||
{{#each this.subclassCards}}
|
||||
{{> "systems/daggerheart/templates/views/levelup/parts/selectable-card-preview.hbs" img=this.img name=this.name path=this.path selected=this.selected uuid=this.uuid disabled=this.disabled }}
|
||||
{{> "systems/daggerheart/templates/views/levelup/parts/selectable-card-preview.hbs" img=this.img header=this.featureLabel name=this.name path=this.path selected=this.selected uuid=this.uuid isMulticlass=this.isMulticlass featureState=this.featureState disabled=this.disabled }}
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -74,7 +78,9 @@
|
|||
<h3>{{localize "DAGGERHEART.Application.LevelUp.summary.multiclass"}}</h3>
|
||||
|
||||
<div class="levelup-card-selection multiclass-cards" data-path="{{this.multiclass.path}}" data-tier="{{this.multiclass.tier}}" data-min-cost="{{this.multiclass.minCost}}" data-amount="{{this.multiclass.amount}}" data-value="{{this.multiclass.value}}" data-type="{{this.multiclass.type}}">
|
||||
{{> "systems/daggerheart/templates/components/card-preview.hbs" this.multiclass }}
|
||||
{{#> "systems/daggerheart/templates/components/card-preview.hbs" this.multiclass }}
|
||||
{{this.multiclass.emptySubtext}}
|
||||
{{/"systems/daggerheart/templates/components/card-preview.hbs"}}
|
||||
<div class="levelup-domains-selection-container">
|
||||
{{#each this.multiclass.domains}}
|
||||
<div class="levelup-domain-selection-container {{#if this.disabled}}disabled{{/if}}" {{#if (not this.disabled)}}data-action="selectDomain" data-uuid="{{../multiclass.uuid}}" data-domain="{{this.id}}" data-path="{{../multiclass.path}}" {{/if}}>
|
||||
|
|
@ -88,6 +94,20 @@
|
|||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
|
||||
<div class="levelup-domains-selection-container">
|
||||
{{#each this.multiclass.subclasses}}
|
||||
<div class="levelup-domain-selection-container {{#if this.disabled}}disabled{{/if}}" {{#if (not this.disabled)}}data-action="selectSubclass" data-uuid="{{../multiclass.uuid}}" data-subclass="{{this.uuid}}" data-path="{{../multiclass.path}}" {{/if}}>
|
||||
<div class="levelup-domain-label">{{localize this.name}}</div>
|
||||
<img src="{{this.img}}" />
|
||||
{{#if this.selected}}
|
||||
<div class="levelup-domain-selected">
|
||||
<i class="fa-solid fa-check"></i>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
|
|
|||
|
|
@ -95,11 +95,14 @@
|
|||
{{#if this.advancements.traits}}
|
||||
<div>
|
||||
<h5>{{localize "DAGGERHEART.Application.LevelUp.summary.traits"}}</h5>
|
||||
<div class="summary-selection-container">
|
||||
|
||||
{{#each this.advancements.traits}}
|
||||
<div class="summary-selection">{{this}}</div>
|
||||
<div class="increase-container">
|
||||
{{this.label}}: {{this.old}}
|
||||
<i class="fa-solid fa-arrow-right-long"></i>
|
||||
{{this.new}}
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
|
|
@ -124,6 +127,30 @@
|
|||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if this.advancements.subclass}}
|
||||
<div>
|
||||
<h5>{{localize "DAGGERHEART.Application.LevelUp.summary.subclass"}}</h5>
|
||||
<div class="summary-selection-container">
|
||||
{{#each this.advancements.subclass}}
|
||||
<div class="summary-selection">{{this.name}} - {{this.featureLabel}}</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if this.advancements.multiclass}}
|
||||
{{#with this.advancements.multiclass}}
|
||||
<div>
|
||||
<h5>{{localize "DAGGERHEART.Application.LevelUp.summary.multiclass"}}</h5>
|
||||
<div class="summary-selection-container">
|
||||
<div class="summary-selection">{{this.name}}</div>
|
||||
<div class="summary-selection">{{this.domain}}</div>
|
||||
<div class="summary-selection">{{this.subclass}}</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/with}}
|
||||
{{/if}}
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
|
|
|
|||
|
|
@ -12,25 +12,9 @@
|
|||
{{/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>
|
||||
<button class="disadvantage flex1 {{#if this.advantage}}selected{{/if}}" data-action="updateIsAdvantage" data-advantage="true">{{localize "DAGGERHEART.General.Advantage.Full"}}</button>
|
||||
<button class="disadvantage flex1 {{#if (eq this.advantage false)}}selected{{/if}}" data-action="updateIsAdvantage">{{localize "DAGGERHEART.General.Disadvantage.Full"}}</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 valueAttr="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 valueAttr="value" labelAttr="name" localize=true blank=""}}
|
||||
</select>
|
||||
</div>
|
||||
</div> --}}
|
||||
{{#if (not this.isNpc)}}
|
||||
<div class="form-group">
|
||||
<label>Hope</label>
|
||||
|
|
@ -49,24 +33,6 @@
|
|||
</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>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue