mirror of
https://github.com/Foundryborne/daggerheart.git
synced 2026-01-12 03:31:07 +01:00
Feature/238 companion sheet template (#252)
* new companion sheet templates * Data fixes * Changed from evasion.value to evasion.total in display * add attack config and disable experience value input --------- Co-authored-by: WBHarry <williambjrklund@gmail.com>
This commit is contained in:
parent
1b9bd45e9c
commit
cae659b9a5
21 changed files with 1027 additions and 106 deletions
43
templates/sheets/actors/companion/details.hbs
Normal file
43
templates/sheets/actors/companion/details.hbs
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
<section
|
||||
class='tab {{tabs.details.cssClass}} {{tabs.details.id}}'
|
||||
data-tab='{{tabs.details.id}}'
|
||||
data-group='{{tabs.details.group}}'
|
||||
>
|
||||
<div class="partner-section">
|
||||
<div class="title">
|
||||
<side-line-div class="invert"></side-line-div>
|
||||
<h3>Partner</h3>
|
||||
<side-line-div></side-line-div>
|
||||
</div>
|
||||
{{#if document.system.partner}}
|
||||
<ul class="item-list">
|
||||
{{> 'systems/daggerheart/templates/sheets/global/partials/inventory-item.hbs' item=document.system.partner type='actor' isSidebar=true isActor=true noTooltip=true}}
|
||||
</ul>
|
||||
{{else}}
|
||||
<span class="partner-placeholder">{{localize "DAGGERHEART.Sheets.Companion.noPartner"}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
<div class="attack-section">
|
||||
<div class="title">
|
||||
<side-line-div class="invert"></side-line-div>
|
||||
<h3>Attack</h3>
|
||||
<side-line-div></side-line-div>
|
||||
</div>
|
||||
<ul class="item-list">
|
||||
{{> 'systems/daggerheart/templates/sheets/global/partials/inventory-item.hbs' item=source.system.attack type=source.system.attack.systemPath isSidebar=true isCompanion=true noTooltip=true}}
|
||||
</ul>
|
||||
</div>
|
||||
<div class="experience-list">
|
||||
{{#each source.system.experiences as |experience id|}}
|
||||
<div class="experience-row">
|
||||
<div class="experience-value">
|
||||
+{{experience.value}}
|
||||
</div>
|
||||
<span class="experience-name">{{experience.name}}</span>
|
||||
<div class="controls">
|
||||
<a data-action="toChat" data-type="experience" data-uuid="{{id}}"><i class="fa-regular fa-message"></i></a>
|
||||
</div>
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
</section>
|
||||
8
templates/sheets/actors/companion/effects.hbs
Normal file
8
templates/sheets/actors/companion/effects.hbs
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
<section
|
||||
class='tab {{tabs.effects.cssClass}} {{tabs.effects.id}}'
|
||||
data-tab='{{tabs.effects.id}}'
|
||||
data-group='{{tabs.effects.group}}'
|
||||
>
|
||||
{{> 'systems/daggerheart/templates/sheets/global/partials/inventory-fieldset-items.hbs' title=(localize 'DAGGERHEART.Sheets.Global.activeEffects') type='effect'}}
|
||||
{{> 'systems/daggerheart/templates/sheets/global/partials/inventory-fieldset-items.hbs' title=(localize 'DAGGERHEART.Sheets.Global.inativeEffects') type='effect'}}
|
||||
</section>
|
||||
46
templates/sheets/actors/companion/header.hbs
Normal file
46
templates/sheets/actors/companion/header.hbs
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
<header class="companion-header-sheet">
|
||||
<img class="profile" src="{{document.img}}" alt="{{document.name}}" data-action='editImage' data-edit="img">
|
||||
<h1 class='actor-name'>
|
||||
<input
|
||||
type='text'
|
||||
name='name'
|
||||
value='{{document.name}}'
|
||||
placeholder='Actor Name'
|
||||
/>
|
||||
</h1>
|
||||
<div class="status-section">
|
||||
<div class="status-number">
|
||||
<div class='status-value'>
|
||||
<p>{{document.system.evasion.total}}</p>
|
||||
</div>
|
||||
<div class="status-label">
|
||||
<h4>Evasion</h4>
|
||||
</div>
|
||||
</div>
|
||||
<div class="status-bar">
|
||||
<div class='status-value'>
|
||||
<p><input class="bar-input" name="system.resources.stress.value" value="{{document.system.resources.stress.value}}" type="number"></p>
|
||||
<p>/</p>
|
||||
<p class="bar-label">{{document.system.resources.stress.maxTotal}}</p>
|
||||
</div>
|
||||
<progress
|
||||
class='progress-bar stress-color'
|
||||
value='{{document.system.resources.stress.value}}'
|
||||
max='{{document.system.resources.stress.maxTotal}}'
|
||||
></progress>
|
||||
<div class="status-label">
|
||||
<h4>Stress</h4>
|
||||
</div>
|
||||
</div>
|
||||
<h3 class="level-up-label">
|
||||
{{localize "DAGGERHEART.Sheets.Companion.Level"}}
|
||||
{{source.system.levelData.level.changed}}
|
||||
</h3>
|
||||
</div>
|
||||
<div class="companion-navigation">
|
||||
{{> 'systems/daggerheart/templates/sheets/global/tabs/tab-navigation.hbs'}}
|
||||
<button data-action="openSettings">
|
||||
<i class="fa-solid fa-wrench"></i>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
21
templates/sheets/applications/companion-settings/attack.hbs
Normal file
21
templates/sheets/applications/companion-settings/attack.hbs
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
<section
|
||||
class="tab {{tabs.attack.cssClass}} {{tabs.attack.id}}"
|
||||
data-tab="{{tabs.attack.id}}"
|
||||
data-group="{{tabs.attack.group}}"
|
||||
>
|
||||
<fieldset class="one-column">
|
||||
<legend>{{localize "DAGGERHEART.General.basics"}}</legend>
|
||||
{{formGroup systemFields.attack.fields.img value=document.system.attack.img label="Image Path" name="system.attack.img"}}
|
||||
{{formGroup systemFields.attack.fields.name value=document.system.attack.name label="Attack Name" name="system.attack.name"}}
|
||||
</fieldset>
|
||||
<fieldset class="flex">
|
||||
<legend>{{localize "DAGGERHEART.Sheets.Adversary.Attack"}}</legend>
|
||||
{{formField systemFields.attack.fields.range value=document.system.attack.range label="Range" name="system.attack.range" localize=true}}
|
||||
{{#if systemFields.attack.fields.target.fields}}
|
||||
{{ formField systemFields.attack.fields.target.fields.type value=document.system.attack.target.type label="Target" name="system.attack.target.type" localize=true }}
|
||||
{{#if (and document.system.attack.target.type (not (eq document.system.attack.target.type 'self')))}}
|
||||
{{ formField systemFields.attack.fields.target.fields.amount value=document.system.attack.target.amount label="Amount" name="system.attack.target.amount" }}
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
</fieldset>
|
||||
</section>
|
||||
23
templates/sheets/applications/companion-settings/details.hbs
Normal file
23
templates/sheets/applications/companion-settings/details.hbs
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
<section
|
||||
class='tab {{tabs.details.cssClass}} {{tabs.details.id}}'
|
||||
data-tab='{{tabs.details.id}}'
|
||||
data-group='{{tabs.details.group}}'
|
||||
>
|
||||
<fieldset class="one-column">
|
||||
<legend>{{localize 'DAGGERHEART.General.basics'}}</legend>
|
||||
<div class="nest-inputs">
|
||||
{{formGroup systemFields.evasion.fields.value value=document.system.evasion.value localize=true}}
|
||||
{{formGroup systemFields.resources.fields.stress.fields.value value=document.system.resources.stress.value label='Current Stress'}}
|
||||
{{formGroup systemFields.resources.fields.stress.fields.max value=document.system.resources.stress.max label='Max Stress'}}
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="form-fields">
|
||||
<label>{{localize "DAGGERHEART.Sheets.Companion.FIELDS.partner.label"}}</label>
|
||||
<select class="partner-value">
|
||||
{{selectOptions playerCharacters selected=document.system.partner.uuid labelAttr="name" valueAttr="key" blank=""}}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<button data-action="levelUp" {{#if (not document.system.levelData.canLevelUp)}}disabled{{/if}}>Level Up</button>
|
||||
</section>
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
<section
|
||||
class='tab {{tabs.experiences.cssClass}} {{tabs.experiences.id}}'
|
||||
data-tab='{{tabs.experiences.id}}'
|
||||
data-group='{{tabs.experiences.group}}'
|
||||
>
|
||||
<fieldset>
|
||||
<legend>{{localize tabs.experiences.label}}</legend>
|
||||
<ul class="experience-list">
|
||||
{{#each document.system.experiences as |experience key|}}
|
||||
<li class="experience-item">
|
||||
<input class="name" type="text" name="system.experiences.{{key}}.name" value="{{experience.name}}" />
|
||||
<input disabled class="modifier" type="text" name="system.experiences.{{key}}.value" value="{{experience.value}}" data-dtype="Number" />
|
||||
</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
</fieldset>
|
||||
|
||||
</section>
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
<header class="dialog-header">
|
||||
<h1>{{document.name}}</h1>
|
||||
</header>
|
||||
|
|
@ -1,7 +1,11 @@
|
|||
<li class="inventory-item" data-item-id="{{item.id}}" data-item-uuid="{{item.uuid}}" data-companion="{{companion}}" data-tooltip="{{concat "#item#" item.uuid}}">
|
||||
<li class="inventory-item" data-item-id="{{item.id}}" data-item-uuid="{{item.uuid}}" data-companion="{{companion}}" {{#if (not noTooltip)}}data-tooltip="{{concat "#item#" item.uuid}}"{{/if}}>
|
||||
<img src="{{item.img}}" class="item-img {{#if isActor}}actor-img{{/if}}" data-action="useItem"/>
|
||||
<div class="item-label">
|
||||
<div class="item-name">{{item.name}}</div>
|
||||
{{#if isCompanion}}
|
||||
<a class="item-name" data-action="attackRoll">{{item.name}}</a>
|
||||
{{else}}
|
||||
<div class="item-name">{{item.name}}</div>
|
||||
{{/if}}
|
||||
{{#if (eq type 'weapon')}}
|
||||
<div class="item-tags">
|
||||
{{#if isSidebar}}
|
||||
|
|
@ -114,6 +118,11 @@
|
|||
{{#unless hideControls}}
|
||||
{{#if isActor}}
|
||||
<div class="controls">
|
||||
{{#if (eq type 'actor')}}
|
||||
<a data-action="viewActor" data-potential-adversary="{{categoryAdversary}}" data-adversary="{{item.uuid}}" data-tooltip='{{localize "DAGGERHEART.Tooltip.openActorWorld"}}'>
|
||||
<i class="fa-solid fa-globe"></i>
|
||||
</a>
|
||||
{{/if}}
|
||||
{{#if (eq type 'adversary')}}
|
||||
<a data-action="viewAdversary" data-potential-adversary="{{categoryAdversary}}" data-adversary="{{item.uuid}}" data-tooltip='{{localize "DAGGERHEART.Tooltip.openActorWorld"}}'>
|
||||
<i class="fa-solid fa-globe"></i>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue