All user data for FoundryVTT. Includes worlds, systems, modules, and any asset in the "foundryuserdata" directory. Does NOT include the FoundryVTT installation itself.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

272 lines
13 KiB

<form autocomplete="off" onsubmit="event.preventDefault();">
<div class="ability-rows">
<header class="row{{#if manual}} not-eligible{{/if}}">
<div class="row-heading">
<h3>{{localize "PF2E.Actor.Character.AbilityBuilder.Title"}}</h3>
</div>
<div class="abilities">
{{#each abilityScores as |ability key|}}
<div class="row-column">
<h3>{{localize (concat "PF2E.AbilityId." key)}}</h3>
</div>
{{/each}}
</div>
</header>
<!-- ancestry boosts -->
<section class="row{{#if manual}} not-eligible{{/if}}" data-section="ancestry">
{{#if ancestryBoosts}}
<div class="row-heading">
{{#if ancestryBoosts.remaining}}<div class="remaining extra">{{ancestryBoosts.remaining}}</div>{{/if}}
<img class="" src="{{ancestry.img}}" title="{{ancestry.name}}" width="32" height="32" loading="lazy"/>
<div class="label">
<div class="title">{{localize "ITEM.TypeAncestry"}}</div>
<div class="description" data-tooltip-content="#{{actor.id}}-ancestry-tooltip">{{ancestry.name}}</div>
<label class="extra">
{{localize "PF2E.Actor.Character.AbilityBuilder.AlternateBoostsLabel"}} <input type="checkbox" {{checked ancestryBoosts.alternate}} data-action="toggle-alternate-ancestry-boosts">
</label>
</div>
</div>
{{else}}
<div class="row-heading">
<div class="label">
<div class="title">{{localize "ITEM.TypeAncestry"}}</div>
<div class="description">{{localize "PF2E.Actor.Character.AbilityBuilder.NotSelected"}}</div>
</div>
</div>
{{/if}}
{{> abilityRow buttons=ancestryBoosts.buttons fallback="PF2E.Actor.Character.AbilityBuilder.AncestryMissingHelp"}}
<div class="hover-content" id="{{actor.id}}-ancestry-tooltip">
<h2>{{localize "PF2E.Actor.Character.AbilityBuilder.Boosts"}}</h2>
<ul class="boost-details">
{{#each ancestryBoosts.labels as |boost|}}
<li><i class="fas fa-circle"></i>{{boost}}</li>
{{/each}}
</ul>
<h2>{{localize "PF2E.Actor.Character.AbilityBuilder.Flaws"}}</h2>
<ul class="boost-details">
{{#each ancestryBoosts.flawLabels as |flaw|}}
<li><i class="fas fa-circle"></i>{{flaw}}</li>
{{/each}}
</ul>
</div>
</section>
<!-- ancestry voluntary flaw -->
<section class="row{{#if manual}} not-eligible{{/if}} voluntary-flaw-row" data-section="voluntary">
{{#if ancestry}}
<div class="row-heading">
{{#if voluntaryFlaws.remaining}}<div class="remaining extra">{{voluntaryFlaws.remaining}}</div>{{/if}}
<div class="label">
<div class="description" data-tooltip-content="#{{actor.id}}-voluntary-flaw-tooltip">{{localize "PF2E.Actor.Character.AbilityBuilder.VoluntaryFlaw.Title"}}</div>
<label class="extra" data-tooltip-content="#{{actor.id}}-legacy-voluntary-flaw-tooltip">
Legacy Flaws <i class="fas fa-info-circle small"></i>
<input type="checkbox" data-action="toggle-legacy-voluntary-flaw" {{checked legacyFlaws}}>
</label>
</div>
</div>
{{> abilityRow buttons=voluntaryFlaws.buttons}}
{{/if}}
<div class="hover-content" id="{{actor.id}}-voluntary-flaw-tooltip">{{localize "PF2E.Actor.Character.AbilityBuilder.VoluntaryFlaw.Description"}}</div>
<div class="hover-content" id="{{actor.id}}-legacy-voluntary-flaw-tooltip">{{localize "PF2E.Actor.Character.AbilityBuilder.VoluntaryFlaw.LegacyDescription"}}</div>
</section>
<hr />
<!-- background boosts -->
<section class="row{{#if manual}} not-eligible{{/if}}" data-section="background">
{{#if backgroundBoosts}}
<div class="row-heading" data-tooltip-content="#{{actor.id}}-background-tooltip">
{{#if backgroundBoosts.remaining}}<div class="remaining extra">{{backgroundBoosts.remaining}}</div>{{/if}}
<img class="" src="{{background.img}}" title="{{background.name}}" width="32" height="32" loading="lazy"/>
<div class="label">
<div class="title">{{localize "PF2E.Background"}}</div>
<div class="description">{{background.name}}</div>
</div>
</div>
{{else}}
<div class="row-heading">
<div class="label">
<div class="title">{{localize "ITEM.TypeBackground"}}</div>
<div class="description">{{localize "PF2E.Actor.Character.AbilityBuilder.NotSelected"}}</div>
</div>
</div>
{{/if}}
{{> abilityRow buttons=backgroundBoosts.buttons fallback="PF2E.Actor.Character.AbilityBuilder.BackgroundMissingHelp"}}
<div class="hover-content" id="{{actor.id}}-background-tooltip">
{{#if backgroundBoosts.tooltip}}
{{backgroundBoosts.tooltip}}
{{else}}
<h2>{{localize "PF2E.Actor.Character.AbilityBuilder.Boosts"}}</h2>
<ul class="boost-details">
{{#each backgroundBoosts.labels as |boost|}}
{{#if boost}}
<li><i class="fas fa-circle"></i>{{boost}}</li>
{{/if}}
{{/each}}
</ul>
{{/if}}
</div>
</section>
<hr />
<!-- class boosts -->
<section class="row{{#if manual}} not-eligible{{/if}}">
{{#if class}}
<div class="row-heading">
<img class="" src="{{class.img}}" title="{{ancestry.name}}" width="32" height="32" loading="lazy"/>
<div>
<div class="title">{{localize "PF2E.Class"}}</div>
<div class="description">{{class.name}}</div>
</div>
</div>
<div class="abilities">
{{#each abilities as |key ability|}}
<div class="row-column">
<button type="button" data-action="class-key-ability" data-key="{{key}}" data-ability="{{ability}}"
class="boost key-ability
{{~#if (not (contains ../keyOptions ability))}} hidden{{/if}}
{{~#if (eq ../class.system.keyAbility.selected ability)}} selected{{/if}}
{{~#if ../manual}} hidden{{/if}}"
>
<i class="fas fa-fw fa-key"></i>
{{localize "PF2E.Actor.Character.AbilityBuilder.KeyIcon"}}
</button>
</div>
{{/each}}
</div>
{{else}}
<div class="row-heading">
<div class="label">
<div class="title">{{localize "ITEM.TypeClass"}}</div>
<div class="description">{{localize "PF2E.Actor.Character.AbilityBuilder.NotSelected"}}</div>
</div>
</div>
<div class="full-row">{{localize "PF2E.Actor.Character.AbilityBuilder.ClassMissingHelp"}}</div>
{{/if}}
</section>
<hr />
<div class="row{{#if manual}} not-eligible{{/if}}">
<div class="row-heading">
<div class="label">
<div class="title">{{localize "PF2E.AbilityFree"}}</div>
</div>
</div>
</div>
{{#each levelBoosts as |boosts|}}
<section class="row{{#if ../manual}} not-eligible{{/if}}{{#if (not boosts.eligible)}} not-eligible{{/if}}" data-level="{{boosts.level}}">
<div class="row-heading">
{{#if remaining}}<div class="remaining extra">{{remaining}}</div>{{/if}}
<div class="label">
<div class="description">
{{#if (eq boosts.minLevel boosts.level)}}
{{localize "PF2E.LevelN" level=boosts.level}}
{{else}}
{{localize "PF2E.LevelRange" minLevel=boosts.minLevel level=boosts.level}}
{{/if}}
</div>
</div>
</div>
{{> abilityRow buttons=boosts.buttons}}
</section>
{{/each}}
<section class="row summary-row">
<div class="row-heading">
<aside class="hint-container">
<h3>{{localize "PF2E.Actor.Character.AbilityBuilder.AbilityScoreMethod.Title"}}</h3>
<p>{{localize "PF2E.Actor.Character.AbilityBuilder.AbilityScoreMethod.Description"}}</p>
<label>
<input type="checkbox" name="toggle-manual-mode"{{checked manual}}>
{{localize "PF2E.Actor.Character.AbilityBuilder.AbilityScoreMethod.UseCustomLabel"}}
</label>
</aside>
</div>
<div class="abilities">
{{#each abilityScores as |ability key|}}
<div class="row-column">
{{#if ../manual}}
<button type="button" data-action="class-key-ability" data-key="{{lookup ../abilities key}}" data-ability="{{key}}"
class="boost{{#if (eq ../manualKeyAbility key)}} selected{{/if}}"
tabindex="-1"
>
<i class="fas fa-fw fa-key"></i>
{{localize "PF2E.Actor.Character.AbilityBuilder.KeyIcon"}}
</button>
<input type="number" data-property="system.abilities.{{key}}.value" name="system.abilities.{{key}}.value" value="{{ability.base}}" placeholder="10">
{{else}}
<button type="button" class="boost hidden"></button>
<div class="value">{{ability.base}}</div>
{{/if}}
<h4>{{localize (lookup ../abilities key)}}</h4>
</div>
{{/each}}
<button class="complete" type="button" data-action="close">{{localize "PF2E.Actor.Character.AbilityBuilder.Complete"}}</button>
</div>
</section>
</div>
<div class="row background-stripes">
<div class="row-heading"></div>
<div class="abilities">
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
</div>
</div>
</form>
{{#*inline "abilityRow"}}
{{#if buttons}}
<div class="abilities">
{{#each buttons as |state|}}
<div class="row-column" data-ability="{{state.ability}}" data-stat="{{state.stat}}">
{{#if flaw}}
{{> boostButton type="flaw" button=state.flaw}}
{{/if}}
{{#if boost}}
{{> boostButton type="boost" button=state.boost}}
{{/if}}
</div>
{{/each}}
</div>
{{else if fallback}}
<div class="full-row">{{localize fallback}}</div>
{{/if}}
{{/inline}}
{{#*inline "boostButton"}}
{{#if button.second}}
<div class="flaw-buttons">
{{> boostButtonSingle button=button type=type number="first"}}
{{> boostButtonSingle button=button.second type=type number="second"}}
</div>
{{else}}
{{> boostButtonSingle button=button type=type}}
{{/if}}
{{#*inline "boostButtonSingle"}}
<button type="button" data-action="{{type}}" class="tooltip boost-button {{type}} {{number}}{{#if button.selected}} selected{{/if}}{{#if button.locked}} locked{{/if}}" {{disabled (and button.disabled (not button.selected))}}>
{{#if button.locked}}<i class="fas fa-lock"></i>{{/if}}
{{#if (eq number "second")}}
x2
{{else if (eq type "flaw")}}
{{localize "PF2E.Actor.Character.AbilityBuilder.Flaw"}}
{{else}}
{{localize "PF2E.Actor.Character.AbilityBuilder.Boost"}}
{{/if}}
</button>
{{/inline}}
{{/inline}}