mirror of
https://github.com/Foundryborne/daggerheart.git
synced 2026-01-11 19:25:21 +01:00
Levelup Remake (#100)
* Set up DhLevelTier datamodel * Added Levelup data model and started at the render * Fixed data handling in the LevelUp view * Added back the save function * Finalised levelup selections and propagating to PC * Added level advancement selection data * Added DomainCard selection * Css merge commit * Added PC level/delevel benefits of leveling up * Fixed sticky previous selections on continous leveling * Fixed up Summary. Fixed multiclass/subclass blocking on selection * Removed unused level.hbs * Fixed attribute base for PC * Improved naming of attribute properties * Renamed/structured resources/evasion/proficiency * Improved trait marking * Rework to level up once at a time * Added markers * Removed tabs when in Summary * Fixed multilevel buttons * Improved multiclass/subclass recognition * Fixed tagify error on selection * Review fixes
This commit is contained in:
parent
47a6abddfb
commit
a92221778e
41 changed files with 3279 additions and 1283 deletions
13
templates/components/card-preview.hbs
Normal file
13
templates/components/card-preview.hbs
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
<div class="component dh-style card-preview-container {{#if (and this.compendium (not this.img))}}selectable{{/if}}" data-action="viewCompendium" data-compendium="{{this.compendium}}" data-path="{{this.path}}" data-limit="{{this.limit}}">
|
||||
{{#if this.img}}
|
||||
<img class="preview-image-container" src="{{this.img}}" />
|
||||
<div class="preview-text-container">{{this.name}}</div>
|
||||
{{else}}
|
||||
<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>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
|
@ -103,7 +103,7 @@
|
|||
<div class="form-group">
|
||||
<label>{{localize "DAGGERHEART.Sheets.Adversary.HP"}}</label>
|
||||
<div class="form-fields">
|
||||
<input type="text" name="system.resources.health.max" value="{{source.system.resources.health.max}}" data-dtype="Number" />
|
||||
<input type="text" name="system.resources.hitPoints.max" value="{{source.system.resources.hitPoints.max}}" data-dtype="Number" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
|
|
|
|||
|
|
@ -7,22 +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.data.value}}" src="icons/svg/d12-grey.svg" />
|
||||
<img class="attribute-roll" data-action="attributeRoll" data-attribute="{{key}}" data-value="{{attribute.value}}" src="icons/svg/d12-grey.svg" />
|
||||
<div class="attribute-text">{{key}}</div>
|
||||
</div>
|
||||
<div class="attribute-mark {{#if (and (not attribute.levelMark) (and (not (includes attribute.levelMarks ../document.system.levelData.currentLevel)) (gt ../document.system.availableAttributeMarks.length 0)))}}selectable{{/if}}" data-action="toggleAttributeMark" data-attribute="{{key}}">
|
||||
<i class="fa-solid fa-check {{#if attribute.levelMark}}selected{{/if}}"></i>
|
||||
</div>
|
||||
<div class="attribute-image">
|
||||
{{#if ../editAttributes}}
|
||||
<select class="attribute-value{{#if (lt attribute.data.base 0)}} negative{{/if}}{{#if (and (not attribute.data.base) (not ../abilityScoresFinished))}} unselected{{/if}}" data-attribute="{{key}}">
|
||||
{{#if (not (eq attribute.data.base 0))}}<option value="">{{attribute.data.base}}</option>{{/if}}
|
||||
<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}}
|
||||
{{#each ../abilityScoreArray as |option|}}
|
||||
<option value="{{option.value}}"{{#if (eq option.value attribute.data.base)}} selected="selected"{{/if}}>{{option.name}}</option>
|
||||
<option value="{{option.value}}"{{#if (eq option.value attribute.base)}} selected="selected"{{/if}}>{{option.name}}</option>
|
||||
{{/each}}
|
||||
</select>
|
||||
{{else}}
|
||||
<div class="attribute-text {{#if (lt attribute.data.value 0)}}negative{{/if}}">{{attribute.data.value}}</div>
|
||||
<div class="attribute-text {{#if (lt attribute.value 0)}}negative{{/if}}">{{attribute.value}}</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}}</div>
|
||||
<div class="defense-value">{{document.system.evasion.value}}</div>
|
||||
<img src="systems/daggerheart/assets/AttributeShield.svg" />
|
||||
<div class="defense-banner">{{localize "DAGGERHEART.Sheets.PC.Defense.Evasion"}}</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -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.health.value document.system.resources.health.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.max)}}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,12 +30,12 @@
|
|||
</div>
|
||||
<div class="flexcol">
|
||||
<div class="flexrow" style="flex-wrap: nowrap;">
|
||||
{{#times document.system.resources.health.max}}
|
||||
{{#times document.system.resources.hitPoints.max}}
|
||||
{{#with (add this 1)}}
|
||||
<input class="resource-box" type="checkbox" data-action="toggleHP" data-value="{{this}}" {{ checked (gte ../../document.system.resources.health.value this) }} />
|
||||
<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.health.max)}}
|
||||
{{#times (subtract 12 document.system.resources.hitPoints.max)}}
|
||||
<input class="resource-box disabled" type="checkbox" disabled />
|
||||
{{/times}}
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -41,13 +41,13 @@
|
|||
<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.canLevelUp}}levelup{{/if}}">
|
||||
<div class="level-container {{#if document.system.levelData.canLevelUp}}levelup{{/if}}">
|
||||
<div class="level-value-container">
|
||||
<input class="level-value {{#if document.system.canLevelUp}}levelup{{/if}}" name="system.levelData.changedLevel" value="{{document.system.levelData.changedLevel}}" type="text" data-dtype="Number" />
|
||||
{{#if document.system.canLevelUp}}<div class="levelup-marker {{#if (gte document.system.levels.current 10)}}double-digit{{/if}}">*</div>{{/if}}
|
||||
<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 class="level-title {{#if document.system.canLevelUp}}levelup{{/if}}">{{localize "DAGGERHEART.Sheets.PC.Level"}}</div>
|
||||
<div class="level-title {{#if document.system.levelData.canLevelUp}}levelup{{/if}}">{{localize "DAGGERHEART.Sheets.PC.Level"}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flexrow">
|
||||
|
|
|
|||
|
|
@ -1,20 +0,0 @@
|
|||
<div class="flex-col">
|
||||
<div class="levelup-title-container">Level {{activeLevel}}</div>
|
||||
<div class="levelup-section">
|
||||
{{#each data}}
|
||||
{{> "systems/daggerheart/templates/views/parts/level.hbs" data=this }}
|
||||
{{/each}}
|
||||
{{!-- {{#each levelupConfig as |configData key|}}
|
||||
{{> "systems/daggerheart/templates/views/parts/level.hbs" configData=configData levelData=(lookup ../levelData key) completedSelection=../completedSelection activeTier=../activeTier activeLevel=../activeLevel category=key }}
|
||||
{{/each}} --}}
|
||||
</div>
|
||||
<footer>
|
||||
|
||||
{{#if (eq activeLevel changedLevel )}}
|
||||
<button data-action="finishLevelup" {{#if (not completedSelection)}}disabled{{/if}}>{{localize "DAGGERHEART.Application.LevelUp.TakeLevelUp"}}</button>
|
||||
{{else}}
|
||||
<button data-action="advanceLevel" {{#if (not completedSelection)}}disabled{{/if}}>{{localize "DAGGERHEART.Application.LevelUp.AdvanceLevel" level=(add activeLevel 1)}}</button>
|
||||
{{/if}}
|
||||
<button data-action="close">{{localize "DAGGERHEART.Application.Cancel"}}</button>
|
||||
</footer>
|
||||
</div>
|
||||
11
templates/views/levelup/parts/selectable-card-preview.hbs
Normal file
11
templates/views/levelup/parts/selectable-card-preview.hbs
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
<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="preview-image-outer-container">
|
||||
<img class="preview-image-container" src="{{this.img}}" />
|
||||
{{#if this.selected}}
|
||||
<div class="preview-selected-icon-container">
|
||||
<i class="fa-solid fa-check"></i>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
<div class="preview-text-container">{{this.name}}</div>
|
||||
</div>
|
||||
40
templates/views/levelup/tabs/advancements.hbs
Normal file
40
templates/views/levelup/tabs/advancements.hbs
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
<section
|
||||
class='tab {{tabs.advancements.cssClass}} {{tabs.advancements.id}}'
|
||||
data-tab='{{tabs.advancements.id}}'
|
||||
data-group='{{tabs.advancements.group}}'
|
||||
>
|
||||
<div class="section-container">
|
||||
<div class="tiers-container">
|
||||
{{#each this.levelup.tiersForRendering as |tier key|}}
|
||||
<fieldset class="tier-container {{#if (not tier.active)}}inactive{{/if}}">
|
||||
<legend>{{tier.name}}</legend>
|
||||
|
||||
{{#each tier.groups}}
|
||||
<div class="checkbox-group-container">
|
||||
<div class="checkboxes-container">
|
||||
{{#each this.checkboxGroups}}
|
||||
<div class="checkbox-grouping-coontainer {{#if this.multi}}multi{{/if}}">
|
||||
{{#each this.checkboxes}}
|
||||
<input
|
||||
type="checkbox" class="selection-checkbox{{#if (gt this.cost 1)}} multi{{/if}}" {{checked this.selected}} {{#if this.disabled}}disabled{{/if}}
|
||||
data-tier="{{this.tier}}"
|
||||
data-level="{{this.level}}"
|
||||
data-option="{{this.type}}"
|
||||
data-checkbox-nr="{{this.checkboxNr}}"
|
||||
data-cost="{{this.minCost}}"
|
||||
data-amount="{{this.amount}}"
|
||||
data-value="{{this.value}}"
|
||||
data-type="{{this.type}}"
|
||||
/>
|
||||
{{/each}}
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
<div class="checkbox-group-label">{{this.label}}</div>
|
||||
</div>
|
||||
{{/each}}
|
||||
</fieldset>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
95
templates/views/levelup/tabs/selections.hbs
Normal file
95
templates/views/levelup/tabs/selections.hbs
Normal file
|
|
@ -0,0 +1,95 @@
|
|||
<section
|
||||
class='tab {{tabs.selections.cssClass}} {{tabs.selections.id}}'
|
||||
data-tab='{{tabs.selections.id}}'
|
||||
data-group='{{tabs.selections.group}}'
|
||||
>
|
||||
<div class="section-container levelup-selections-container">
|
||||
{{#if (gt this.newExperiences.length 0)}}
|
||||
<div>
|
||||
<h3>{{localize "DAGGERHEART.Application.LevelUp.summary.newExperiences"}}</h3>
|
||||
<div class="achievement-experience-cards">
|
||||
{{#each this.newExperiences}}
|
||||
<div class="achievement-experience-card">
|
||||
<div class="flexrow">
|
||||
<input type="text" name="{{concat "levelup.levels." this.level ".achievements.experiences." this.key ".name"}}" value="{{this.name}}" placeholder="{{localize "DAGGERHEART.Application.LevelUp.summary.experiencePlaceholder"}}" />
|
||||
<div class="flex0">{{signedNumber this.modifier}}</div>
|
||||
</div>
|
||||
<div class="achievement-experience-marker">
|
||||
{{#if this.name}}<i class="fa-solid fa-check"></i>{{/if}}
|
||||
</div>
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if this.traits.active}}
|
||||
<div>
|
||||
<h3 class="levelup-selections-title">
|
||||
<div>{{localize "DAGGERHEART.Application.LevelUp.summary.traits"}}</div>
|
||||
<div>{{this.traits.progress.selected}}/{{this.traits.progress.max}}</div>
|
||||
</h3>
|
||||
|
||||
<input type="text" class="levelup-trait-increases" value="{{this.traits.values}}" />
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if this.experienceIncreases.active}}
|
||||
<div>
|
||||
<h3 class="levelup-selections-title">
|
||||
<div>{{localize "DAGGERHEART.Application.LevelUp.summary.experienceIncreases"}}</div>
|
||||
<div>{{this.experienceIncreases.progress.selected}}/{{this.experienceIncreases.progress.max}}</div>
|
||||
</h3>
|
||||
|
||||
<input type="text" class="levelup-experience-increases" value="{{this.experienceIncreases.values}}" />
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if (gt this.domainCards.length 0)}}
|
||||
<div>
|
||||
<h3>{{localize "DAGGERHEART.Application.LevelUp.summary.domainCards"}}</h3>
|
||||
|
||||
<div class="levelup-card-selection domain-cards">
|
||||
{{#each this.domainCards}}
|
||||
{{> "systems/daggerheart/templates/components/card-preview.hbs" this }}
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if (gt this.subclassCards.length 0)}}
|
||||
<div>
|
||||
<h3>{{localize "DAGGERHEART.Application.LevelUp.summary.subclass"}}</h3>
|
||||
|
||||
<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 }}
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if this.multiclass}}
|
||||
<div>
|
||||
<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 }}
|
||||
<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}}>
|
||||
<div class="levelup-domain-label">{{localize this.label}}</div>
|
||||
<img src="{{this.src}}" />
|
||||
{{#if this.selected}}
|
||||
<div class="levelup-domain-selected">
|
||||
<i class="fa-solid fa-check"></i>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
</section>
|
||||
134
templates/views/levelup/tabs/summary.hbs
Normal file
134
templates/views/levelup/tabs/summary.hbs
Normal file
|
|
@ -0,0 +1,134 @@
|
|||
<section
|
||||
class='tab {{tabs.summary.cssClass}} {{tabs.summary.id}}'
|
||||
data-tab='{{tabs.summary.id}}'
|
||||
data-group='{{tabs.summary.group}}'
|
||||
>
|
||||
<div class="section-container levelup-summary-container">
|
||||
<fieldset>
|
||||
<legend>{{localize "DAGGERHEART.Application.LevelUp.summary.levelAchievements"}}</legend>
|
||||
|
||||
<div class="level-achievements-container">
|
||||
{{#if this.achievements.proficiency.shown}}
|
||||
<div>
|
||||
<div class="increase-container">
|
||||
{{localize "DAGGERHEART.Application.LevelUp.summary.proficiencyIncrease" proficiency=this.achievements.proficiency.old }}
|
||||
<i class="fa-solid fa-arrow-right-long"></i>
|
||||
{{this.achievements.proficiency.new}}
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
<div>
|
||||
<h5 class="summary-section">{{localize "DAGGERHEART.Application.LevelUp.summary.damageThresholds"}}{{#if this.levelAchievements.damageThresholds.unarmored}}({{localize "DAGGERHEART.General.unarmored"}}){{/if}}</h5>
|
||||
<div class="increase-container">
|
||||
{{localize "DAGGERHEART.Application.LevelUp.summary.damageThresholdMajorIncrease" threshold=this.achievements.damageThresholds.major.old }}
|
||||
<i class="fa-solid fa-arrow-right-long"></i>
|
||||
{{this.achievements.damageThresholds.major.new}}
|
||||
</div>
|
||||
<div class="increase-container">
|
||||
{{localize "DAGGERHEART.Application.LevelUp.summary.damageThresholdSevereIncrease" threshold=this.achievements.damageThresholds.severe.old }}
|
||||
<i class="fa-solid fa-arrow-right-long"></i>
|
||||
{{this.achievements.damageThresholds.severe.new}}
|
||||
</div>
|
||||
</div>
|
||||
{{#if this.achievements.domainCards.shown}}
|
||||
<div>
|
||||
<h5>{{localize "DAGGERHEART.Application.LevelUp.summary.domainCards"}}</h5>
|
||||
<div class="summary-selection-container">
|
||||
{{#each this.achievements.domainCards.values}}
|
||||
<div class="summary-selection">{{this.name}}</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#if this.achievements.experiences.shown}}
|
||||
<div>
|
||||
<h5>{{localize "DAGGERHEART.Application.LevelUp.summary.newExperiences"}}</h5>
|
||||
<div class="summary-selection-container">
|
||||
{{#each this.achievements.experiences.values}}
|
||||
<div class="summary-selection">{{this.name}} {{signedNumber this.modifier}}</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend>{{localize "DAGGERHEART.Application.LevelUp.summary.levelAdvancements"}}</legend>
|
||||
|
||||
<div class="level-advancements-container">
|
||||
{{#if this.advancements.statistics.shown}}
|
||||
<div>
|
||||
{{#if this.advancements.statistics.proficiency.shown}}
|
||||
<div class="increase-container">
|
||||
{{localize "DAGGERHEART.Application.LevelUp.summary.proficiencyIncrease" proficiency=this.advancements.statistics.proficiency.old }}
|
||||
<i class="fa-solid fa-arrow-right-long"></i>
|
||||
{{this.advancements.statistics.proficiency.new}}
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if this.advancements.statistics.hitPoints.shown}}
|
||||
<div class="increase-container">
|
||||
{{localize "DAGGERHEART.Application.LevelUp.summary.hpIncrease" hitPoints=this.advancements.statistics.hitPoints.old }}
|
||||
<i class="fa-solid fa-arrow-right-long"></i>
|
||||
{{this.advancements.statistics.hitPoints.new}}
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if this.advancements.statistics.stress.shown}}
|
||||
<div class="increase-container">
|
||||
{{localize "DAGGERHEART.Application.LevelUp.summary.stressIncrease" stress=this.advancements.statistics.stress.old }}
|
||||
<i class="fa-solid fa-arrow-right-long"></i>
|
||||
{{this.advancements.statistics.stress.new}}
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#if this.advancements.statistics.evasion.shown}}
|
||||
<div class="increase-container">
|
||||
{{localize "DAGGERHEART.Application.LevelUp.summary.evasionIncrease" evasion=this.advancements.statistics.evasion.old }}
|
||||
<i class="fa-solid fa-arrow-right-long"></i>
|
||||
{{this.advancements.statistics.evasion.new}}
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#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>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if this.advancements.domainCards}}
|
||||
<div>
|
||||
<h5>{{localize "DAGGERHEART.Application.LevelUp.summary.domainCards"}}</h5>
|
||||
<div class="summary-selection-container">
|
||||
{{#each this.advancements.domainCards}}
|
||||
<div class="summary-selection">{{this.name}}</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if this.advancements.experiences}}
|
||||
<div>
|
||||
<h5>{{localize "DAGGERHEART.Application.LevelUp.summary.experienceIncreases"}}</h5>
|
||||
<div class="summary-selection-container">
|
||||
{{#each this.advancements.experiences}}
|
||||
<div class="summary-selection">{{this.name}} {{signedNumber this.modifier}}</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
<footer class="levelup-footer">
|
||||
<button data-action="save" {{#if (not this.levelup.allLevelsFinished)}}disabled{{/if}}>{{localize "Finish Levelup"}}</button>
|
||||
</footer>
|
||||
</div>
|
||||
</section>
|
||||
40
templates/views/levelup/tabs/tab-navigation.hbs
Normal file
40
templates/views/levelup/tabs/tab-navigation.hbs
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
<section class='tab-navigation'>
|
||||
<line-div></line-div>
|
||||
<div class="levelup-navigation-container">
|
||||
{{#if this.showTabs}}
|
||||
<nav class='feature-tab sheet-tabs tabs' data-group='primary'>
|
||||
{{#each tabs as |tab|}}
|
||||
{{#if (not (eq tab.id 'summary'))}}
|
||||
<div class="levelup-tab-container">
|
||||
<a class='{{tab.id}} {{tab.cssClass}}' data-action='tab' data-group='{{tab.group}}' data-tab='{{tab.id}}'>
|
||||
{{localize tab.label}}
|
||||
</a>
|
||||
{{#if tab.progress}}
|
||||
<div>{{tab.progress.selected}}/{{tab.progress.max}}</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/if}}
|
||||
{{/each}}
|
||||
</nav>
|
||||
{{/if}}
|
||||
<div class="levelup-navigation-actions {{#if (not this.showTabs)}}test{{/if}}">
|
||||
{{#if this.navigate.previous.fromSummary}}
|
||||
<button data-action="activatePart" data-part="advancements">{{localize "DAGGERHEART.Application.LevelUp.navigateToLevelup"}}</button>
|
||||
{{else}}
|
||||
{{#if (not this.navigate.previous.disabled)}}
|
||||
<button data-action="updateCurrentLevel" >{{this.navigate.previous.label}}</button>
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
{{#if this.navigate.next.show}}
|
||||
{{#if this.navigate.next.toSummary}}
|
||||
<button data-action="activatePart" data-part="summary" {{#if this.navigate.next.disabled}}disabled{{/if}}>{{localize "DAGGERHEART.Application.LevelUp.navigateToSummary"}}</button>
|
||||
{{else}}
|
||||
<button data-action="updateCurrentLevel" data-forward="true" {{#if this.navigate.next.disabled}}disabled{{/if}}>{{this.navigate.next.label}}</button>
|
||||
{{/if}}
|
||||
{{else}}
|
||||
<div></div>
|
||||
{{/if}}
|
||||
</div>
|
||||
</div>
|
||||
<line-div></line-div>
|
||||
</section>
|
||||
|
|
@ -1,40 +0,0 @@
|
|||
<div class="levelup-container {{#if (not data.active)}}disabled{{/if}}">
|
||||
<fieldset class="levelup-inner-container">
|
||||
<legend class="levelup-legend">
|
||||
{{data.label}}
|
||||
</legend>
|
||||
|
||||
<div class="levelup-info">{{data.info}}</div>
|
||||
<div class="levelup-pretext">{{data.pretext}}</div>
|
||||
<div class="levelup-body">
|
||||
{{#each data.choices as |choice choiceKey|}}
|
||||
<div class="levelup-choice-row">
|
||||
<div class="levelup-choice-row-inner">
|
||||
{{#each choice.values as |value valueKey|}}
|
||||
{{#times choice.cost}}
|
||||
<div class="levelup-choice-input-container">
|
||||
<input
|
||||
type="checkbox"
|
||||
data-action="toggleBox"
|
||||
data-path="{{../path}}"
|
||||
data-level-attribute="{{@../key}}"
|
||||
{{checked ../selected}}
|
||||
{{#if ../disabled}}disabled{{/if}}
|
||||
/>
|
||||
{{#if (lt (add this 1) ../../cost)}}
|
||||
<i class="fa-solid fa-link"></i>
|
||||
{{/if}}
|
||||
{{#if ../locked}}
|
||||
<i class="fa-solid fa-lock"></i>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/times}}
|
||||
{{/each}}
|
||||
</div>
|
||||
<div>{{localize choice.description}}</div>
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
<div class="levelup-posttext">{{data.posttext}}</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
Loading…
Add table
Add a link
Reference in a new issue