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